PHP PEAR include_path:访问CPanel中安装的软件包

时间:2015-06-24 14:02:23

标签: php cpanel pear

我正在使用GoDaddy进行托管,我使用他们的CPanel安装了许多PEAR包。

我已经复制并粘贴到CPanel在我的PHP文件中推荐的包含路径修改代码中。这是代码(用户名替换为我的用户名):

ini_set("include_path", '/home/username/php:' . ini_get("include_path") );

但是,当我运行PEAR包检查时,它只会找到系统安装的模块而不是我添加的包。

我已通过文件管理器确认已将软件包和相关文件安装到文件夹中。

此外,GoDaddy / CPanel报告已成功安装软件包。

这是我的包裹检查代码:

<?php 
ini_set("include_path", '/home/username/php:' . ini_get("include_path") );

echo ini_get("include_path")."<br>";

require_once 'System.php';
var_dump(class_exists('System', false));
echo "<br>";

include 'PEAR/Registry.php';

$reg = new PEAR_Registry;
foreach ($reg->listPackages() as $package) {
    print "$package<br>";
}
?> 

结果输出仅显示系统安装的模块,而不显示我安装的PEAR扩展或应用程序。

GoDaddy / CPanel是否包含错误的包含路径?

1 个答案:

答案 0 :(得分:0)

PEAR_Registry检查仅适用于已通过PEAR安装程序安装到系统的PEAR包 - 它不会获取只是复制到包含路径中拾取的某个目录的包。

检查是否存在这些软件包的代码需要扫描目录中没有获取PEAR_Registry检查代码的类/文件,并确定它们属于哪些软件包。