我有一个安装失败的应用程序。供应商说我可能禁用了 ini_set()。我怎样才能检查这个?
user4903
问问题
17375 次
3 回答
3
我对此做了一些研究,结果发现有时 ini_set 不会返回 FALSE,而是一个空字符串。gabriel1836指出的URL中提到了这一点。检查它是否有效的最好方法是首先检查 php.ini 中的 disable_functions 标志,看看它是否被禁用,然后(如果它没有被禁用),用它更改一个值,然后立即回显 phpinfo()。如果在本地列下更改了值,那么您知道 ini_set 有效。
于 2008-10-30T19:58:36.410 回答
0
你可能想看看 php.ini 中的 CHANGEABLE 指令: http://us3.php.net/manual/en/ini.php#ini.list
关于验证 ini_set 函数是否有效,您可以检查返回值以确保它有效: http://us3.php.net/manual/en/function.ini-set.php
代码看起来像这样:
<?php
if(ini_set('error_reporting', 'ALL') === false)
{
// Perform failure handling logic
}
?>
于 2008-10-29T15:22:24.767 回答
0
您可以检查disable_functions
php.ini 文件中的设置。这几乎是我唯一能想到的。不过,我怀疑它会被设置,除非你在共享主机或类似的东西上运行。
您可能还想检查是否使用php_admin_flag
或php_admin_value
在您的 Apache 配置中指定了相关设置,因为这些设置将有效地“锁定”设置并阻止ini_set()
更改它。
于 2008-10-29T15:58:07.067 回答