已安装 PEAR 模块 (HTTP_Request2),但无法在 php 文件中识别?

PEAR module (HTTP_Request2) installed, but not recognized in php file?

我的服务器上安装了 HTTP_Request2; pear list 显示在已安装包列表中。但是下面的 php 文件:

<?php

ini_set("include_path", '/path/to/php:' . ini_get("include_path"));

if (class_exists('HTTP_Request2')) {
    print("true");
} else {
    print("false");
}

...returns false。我也尝试用

替换 ini_set
include '/path/to/php/HTTP/Request2.php';

...但我得到了相同的结果。有没有我遗漏的东西,或者我可以检查的其他东西?

简单地设置包含路径并不能隐含地授予您访问代码的权限。您需要设置包含路径,然后使用相对包含:

ini_set("include_path", ...);
require_once 'HTTP/Request2.php';

或者只使用完全限定的包括:

require_once '/path/to/HTTP/Request2.php';

也就是说,HTTP_Request2 有点老了,我建议您通过 composer 使用 Guzzle 之类的东西。