【问题标题】:http_post_fields() fails after installing pecl_http安装 pecl_http 后 http_post_fields() 失败
【发布时间】:2011-10-24 19:29:00
【问题描述】:

我刚刚使用默认选项安装了 pecl_http,并将“extension=http.so”行添加到我的活动 php.ini 配置文件中,但是当我运行我的脚本时,我仍然得到 ​​p>

调用未定义函数 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;

【问题讨论】:

  • 根据 http_post_fields 的手册页,您需要 pecl_http 版本 0.10.0 或更高版本。你安装的是哪个版本?另外,您可以粘贴有问题的代码吗?
  • 不确定如何获取 pecl_http 版本# - 正在研究中
  • 不确定 phpinfo() 是否会显示模块的版本号(我目前无法使用机器尝试),但您可以尝试创建一个如下所示的脚本:<?php phpinfo(); ?>。或者,如果您使用 apt-get 安装 pecl_http,您可以通过 apt-cache show pecl_http 获取有关该软件包的更多信息。
  • 该模块甚至没有出现在使用 phpinfo() 中,这对我所看到的来说是有意义的。什么会阻止模块被加载?我已将“extension=http.so”行添加到 phpinfo() 显示的 php.ini 文件中。
  • 你是如何安装 pecl_http 的?如果您使用了apt-get,当您尝试安装它时,它是否说它已经安装了?如果您使用的是 64 位机器,您是否安装了 64 位版本而不是 32 位版本(如果可用)?如果是源码安装的,确定安装成功了吗?

标签: ubuntu pecl php


【解决方案1】:

验证pecl_http安装成功后,有没有试过this

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

; Enable pecl_http extension module
extension=http.so

重启 Apache

【讨论】:

  • 我已经尝试过类似的东西,虽然我的“附加 .ini 文件”目录是“/usr/local/zend/etc/conf.d”
  • 我不确定发生了什么,但它现在正在工作我会将您的回复标记为感谢您的帮助的答案,但这并不是让事情正常进行的原因。尽管如此,对于有这类问题的人来说,这里有很多有用的信息!
  • 这很奇怪,但很好听。如果您最终确定了问题所在,您可以随时发布自己问题的答案并将其标记为最佳答案(即可以随时更改最佳答案)。当然,您不会因此获得任何代表积分。
猜你喜欢
  • 2015-06-24
  • 2014-11-11
  • 2014-01-31
  • 2011-05-15
  • 2010-12-28
  • 1970-01-01
  • 1970-01-01
  • 2015-10-03
  • 1970-01-01
相关资源
最近更新 更多