Ubuntu 安装pecl_http后,http_post_fields()失败

Ubuntu 安装pecl_http后,http_post_fields()失败,ubuntu,pecl,php,Ubuntu,Pecl,Php,我刚刚安装了带有默认选项的pecl_http,并在我的活动php.ini配置文件中添加了行“extension=http.so”,但当我运行脚本时,仍然会得到 调用未定义的函数http_post_fields() 有什么办法可以解决这个问题吗 代码如下: $url = "http://localhost/elistings/public/dynamicSearch.php"; $data = array("phone_number" => "",

我刚刚安装了带有默认选项的pecl_http,并在我的活动php.ini配置文件中添加了行“extension=http.so”,但当我运行脚本时,仍然会得到

调用未定义的函数http_post_fields()

有什么办法可以解决这个问题吗

代码如下:

    $url = "http://localhost/elistings/public/dynamicSearch.php";
    $data = array("phone_number" => "",
               "business_name" => "name",
               "business_address" => "my address",
               "city_and_state" => "city, CA",
               );

$response = http_post_fields($url, $data);
echo $response;

验证pecl_http已成功安装后,您是否尝试过

我们必须激活模块,不要修改文件/etc/php.ini, 但是在/etc/php.d中添加一个文件pecl_http.ini

; Enable pecl_http extension module
extension=http.so
重新启动Apache


根据手册页面,您需要具有pecl_http版本0.10.0或更高版本。你安装了哪个版本?另外,您可以粘贴有问题的代码吗?不确定如何获取pecl_http版本-立即搜索不确定是否会显示模块的版本号(我现在无法访问计算机进行尝试),但您可以尝试创建如下脚本:
。或者,如果您使用apt get安装pecl_http,您可以执行
apt cache show pecl_http
以获取有关该软件包的更多信息。该模块甚至没有在使用phpinfo()时出现,这与我看到的情况相符。什么会阻止模块加载?我已经在phpinfo()显示的php.ini文件中添加了“extension=http.so”行。您是如何安装pecl_http的?如果您使用apt get,当您尝试安装它时,它是否表示它已安装?如果您在64位计算机上,是否安装了64位版本而不是32位版本(如果可用)?如果你是从源代码安装的,你确定它安装成功了吗?我已经尝试过类似的方法,虽然我的“additional.ini files”目录是“/usr/local/zend/etc/conf.d”,但我不确定发生了什么,但它现在起作用了。我会将你的回复标记为感谢你的帮助的答案,但这并不是让事情起作用的原因。尽管如此,这里还是有很多有用的信息,可供有此类问题的人参考!这很奇怪,但很高兴听到。如果你最终发现了问题所在,你可以随时发布自己问题的答案,并将其标记为最佳答案(即,最佳答案可以随时更改)。当然,你这样做不会得到任何代表分数。