【问题标题】:http.so loaded but http_get undefinedhttp.so 已加载但 http_get 未定义
【发布时间】:2014-01-18 10:58:37
【问题描述】:

我的 Linux 发行版上安装了 LAMP:

///

PHP 5.4.9-4ubuntu2.4 (cli)(构建时间:2013 年 12 月 12 日 04:29:20) 版权所有 (c) 1997-2012 PHP 集团 Zend Engine v2.4.0,版权所有 (c) 1998-2012 Zend Technologies 使用 Xdebug v2.2.1,版权所有 (c) 2002-2012,作者 Derick Rethans

///

为了使用 pecl_http php 扩展中的 http_get,我已明确安装它并将 http.so 扩展添加到 php.ini。

现在我处于以下情况。使用下面的简单 php 代码:

echo var_dump(extension_loaded("http"));

echo var_dump(extension_loaded("raphf"));

echo var_dump(extension_loaded("propro"));

echo var_dump(function_exists("http_get"));

$response = http_get("www.google.com");

echo $response;

我得到了以下结果:

///

boolean true

boolean true

boolean true

**boolean false**

我不知道为什么 extension_loaded("http") 返回 true 但 function_exists("http_get") 返回 false,所以如果没有在 Apache 日志文件中获取以下内容,我就无法使用函数 http_get

“[2013 年 12 月 31 日星期二 12:32:26] [错误] [客户端 127.0.0.1] PHP 致命错误:在第 32 行的 /home/user/main.php 中调用未定义函数 http_get()”

您能帮我解决这个问题吗?

(使用控制台交互模式php -a同样的问题)

phpinfo() 显示:

///

http

启用 HTTP 支持 扩展版本 2.0.3

使用的库编译链接 库 1.2.7 1.2.7 库卷曲 7.29.0 7.29.0 libevent 禁用 禁用

指令本地值主值 http.etag.mode crc32b crc32b

///

谢谢

【问题讨论】:

  • 看来扩展安装正确。做一个 查看已安装扩展的更详细的输出。
  • 嗨,Alex,添加了与 html 扩展相关的 phpinfo() 的输出
  • 啊,我刚刚发现了一些东西——显然所有旧的http_*() 函数只存在于 v1 而不是 v2。此处的其中一个 cmets 中提到了这一点:php.net/manual/en/http.install.phpPECL HTTP 2 文档:devel-m6w6.rhcloud.com/mdref/http
  • @MichaelBerkowski 非常感谢,我认为这回答了我的问题(花费了很多小时之后)。
  • 不幸的是,php.net/manual/en/book.http.php 的文档根本不清楚。

标签: php http lamp


【解决方案1】:

只是稍微详细说明 Alex 的回答,除非我遗漏了什么,否则 Php Manuel 并没有真正反映这个扩展是如何变化的。并且您问题评论中的链接似乎不再起作用。我认为您现在想要获得相同的行为是http\Client::send()

【讨论】:

    【解决方案2】:

    正如 Michael Berkowski 所说,2.x 分支是全新的,它使用不同的 API。

    您可以使用 1.x 分支并以这种方式使用旧功能:

    pecl uninstal pecl_http
    pecl install pecl_http-1.7.6
    

    然后你可以使用http_get

    无论如何,如果这是一个新项目,建议使用最新的 API。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-28
      相关资源
      最近更新 更多