大家。我在梨方面遇到了一些麻烦。
我在我的localhost中测试(我的localhost路径是e:\www
),我的系统是windows xp sp3,我的php版本是5.2.11,路径是C:\Program Files\phpStudy\PHP5
,我在这里运行go-pear.bat
路径和完成安装梨,现在梨路径在C:\Program Files\phpStudy\PHP5\PEAR
(在文件夹下包含.channels
,.registry
,OS
,PEAR
,{{1 }},.depdb
,.depdblock
,.filemap
,.lock
),然后我运行go-pear.phar
并修改php.ini,
C:\Program Files\phpStudy\PHP5\PEAR_ENV.reg
重新启动apache后,我测试了一个简单的代码,该代码可以从pear的网站上复制。
; Windows: "\path1;\path2"
include_path = ".;C:\Program Files\phpStudy\PHP5\PEAR"
但它返回
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2('http://pear.php.net/', HTTP_Request2::METHOD_GET);
try {
$response = $request->send();
if (200 == $response->getStatus()) {
echo $response->getBody();
} else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
} catch (HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
?>
它出了什么问题?怎么解决?感谢。
答案 0 :(得分:25)
您需要安装PEAR包http_request2。
您可以尝试命令...
pear install http_request2
由cweiske提供,但它可能会失败并出现类似......
的错误Failed to download pear/http_request2 within preferred state
"stable", latest release is version 0.5.2, stability "alpha",
use "channel://pear.php.net/http_request2-0.5.2"
如果您看到该错误,则需要使用命令...
进行安装pear install "channel://pear.php.net/http_request2-0.5.2"
这可能会产生关于Net_URL2包的依赖性错误,如....
Failed to download pear/Net_URL2 within preferred state "stable", latest
release is version 0.3.1, stability "beta",
use "channel://pear.php.net/Net_URL2-0.3.1" to install
pear/HTTP_Request2 requires package "pear/Net_URL2" (version >= 0.2.0)
如果看到这样的错误,请发出命令...
pear install "channel://pear.php.net/Net_URL2-0.3.1"
然后重新发出命令......
pear install "channel://pear.php.net/http_request2-0.5.2"
你应该全力以赴。这些软件包的“状态”可能会随着时间的推移而发生变化,因此上述命令中的确切版本也可能会发生变化,并且在某些时候,命令pear install http_request2可能会自行开始工作。
祝你好运。答案 1 :(得分:2)
您需要从pear安装HTTP_Request2包:
pear install http_request2
然后它应该工作。
答案 2 :(得分:1)
我在centos上有类似的问题。如果以上情况不起作用,请遵循此补丁
http://www.angeloluput.com/php-planet/pear-on-php-5-5-could-not-extract-package-xml
补丁无效,所以我必须手动应用补丁。它起作用了。