访问php.ini文件

时间:2011-11-18 01:54:03

标签: php pear

由于错误

,我在运行php文件时遇到问题
Cannot redeclare _pear_call_destructors() in /usr/share/pear/PEAR.php on line 777

经过调查,我发现只有让它运行才能在PHP设置中进行更改

include_path =“。:/ usr / share / php”to

include_path =“。”

但我无法找到这个

include_path = ".:/usr/share/php"

在我的php.ini文件中。我可以找到哪条其他文件?

2 个答案:

答案 0 :(得分:3)

尝试在PHP脚本中设置它:

set_include_path('.');

确保它位于脚本的开头。此外,如果您需要向include路径添加更多内容,那么这就是您的语法:

set_include_path('/path/to/stuff' .
    PATH_SEPARATOR . '/path/to/something-else/' .
    PATH_SEPARATOR . get_include_path() .
    PATH_SEPARATOR . '.'
);

请记住,这只是一个随意的例子。有关详细信息,请访问this page

答案 1 :(得分:3)

从头顶开始,有三种方法可以在脚本中设置包含路径,访问此设置,在php.ini中搜索include_path确保定位正确的.ini文件!某些设置有多个.ini文件。 phpinfo()是您的朋友,可以识别正确的.ini位置。如果您有权访问shell,请轻松获取所有ini信息:

 php -i | grep ini

如果此.ini配置更改因某些原因无法解决,您可以尝试使用脚本顶部的set_include_pathini_set函数重新声明您的包含路径。这是一个从php.net部分撕掉的例子:

// Works as of PHP 4.3.0
set_include_path('.');

// Works in all PHP versions
ini_set('include_path', '.');
祝你好运,编码愉快。

PS:如果您使用的是自定义梨包,请使用包管理器覆盖包含set_include_pathini_set的include_path,从操作系统中删除pear包。防止你的发行版附带的梨加载。