我一直试图以多种方式解决这个问题,阅读很多帖子但仍然没有运气.我在Mac,OSX 10.7 Lion上工作,我正在使用MAMP为WordPress站点(php文件)编写插件,有一次我必须发出HTTP请求:
$request = new HttpRequest('something');
$request->setMethod(HTTP_METH_GET);
Run Code Online (Sandbox Code Playgroud)
执行此请求时出错,当我检查日志文件时,这里是消息:
"PHP Fatal error: Class 'HttpRequest' not found in (the_php_file)"
Run Code Online (Sandbox Code Playgroud)
我已经安装了PEAR,PECL和HTTP扩展(pecl_http),Xcode及其命令行工具.这就是我做的:
修改了PATH:
$ echo "export PATH=/Applications/MAMP/bin/php/php5.5.3/bin:$PATH" >> ~/.profile`
Run Code Online (Sandbox Code Playgroud)验证php,pear和pecl的路径是正确的:
我从MAMP页面下载了php的源代码(并检查我下载的版本与我正在使用的版本相同,即php5.5.3).然后我提取了内容并将其放入/Applications/MAMP/bin/php/php5.5.3/include/php
./configurepecl install pecl_http我还将这些扩展添加到php.ini(最初,我修改了MAMP/bin/php/php5.5.3/conf/php.ini文件):
extension=raphf.so
extension=propro.so
extension="http.so"
Run Code Online (Sandbox Code Playgroud)关于引号中的最后一个:当我手动添加扩展时,我这样做:extension=http.so.然后(当试图修复我的问题时)我尝试了另一种自动修改php.ini的安装,并使用quot编写了扩展名.标记,但结果仍然相同,所以它没有什么区别.
在所有这些之后,我停止了MAMP服务器并再次启动它,但是当我执行php时我仍然得到错误(在php_error.log中可见):
PHP Fatal error: Class 'HttpRequest' not found
Run Code Online (Sandbox Code Playgroud)
我一直在关注这个指南,其中包括以下内容:http: //www.lullabot.com/blog/article/installing-php-pear-and-pecl-extensions-mamp-mac-os-x-107-狮子
我很感激任何想法,因为我已经用完了.