好的,PHP 有这个功能ini_set()
很多人都知道并会使用它来设置各种配置选项(here http://php.net/manual/en/ini.list.php)来帮助开发等。但是,这个函数似乎只在运行时起作用,如果存在任何致命错误或脚本有语法错误并且无法解析/编译,则该函数将不起作用。
因此,这样做肯定没有意义(根据手册):
http://php.net/manual/en/function.ini-set.php http://php.net/manual/en/function.ini-set.php
Examples
示例 #1 设置 ini 选项
<?php
echo ini_get('display_errors');
if (!ini_get('display_errors')) {
ini_set('display_errors', '1');
}
echo ini_get('display_errors');
?>
我不知道我是否遗漏了一些东西并且我的 php.ini 配置不正确,但很多时候我没有收到任何错误。对于初学者/初级者来说无疑会出现很多语法错误(缺少分号、右括号等),并且表示初级者会搜索如何打开错误,假设上面的手动输入是正确的,但重新运行时他们的脚本,唉,他们没有得到任何错误,因为脚本首先无法解析/编译。
我知道你可以设置display_errors = On
在 php.ini 文件中并重新启动您的 Web 服务器以在屏幕上显示所有错误(在开发环境中使用它,绝对不是实时的),但是删除该功能并仅配置php.ini不同错误级别的文件?
Update:
我知道 ini_set 不仅仅用于显示错误,但是如果您在某些脚本/函数/文件中调用 ini_set ,代码就不太容易管理,并且使用 php.ini 来完成类似的事情不是更有意义吗? ?
Update
因此 ini 文件可用于设置全局配置选项,当然您会使用它来实现安全性或优化,但是开发人员仍然可以使用 ini_set 在运行时覆盖其中一些选项,这可能是不可取的
总之(@Hanky웃Panky):
当一些琐碎的语法错误仍然不显示时,为什么我可以选择显示错误?
是的,你是对的,最好只是删除该功能并仅针对不同的错误级别配置 php.ini 文件。
但是,只有当您的计算机中只有一个项目时,这才是好的,因此,您可以在 php.ini 中进行所有配置设置
考虑一下您有多个项目设置的情况。如果您不想在该项目中进行某些设置,它仍然可以从 php.ini 获取
因此,建议对于某些配置设置,您只需使用 ini_set() 在项目级别设置它们,并且不会反映其他项目。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)