php ini_set是如何工作的?[复制]

How does php ini_set work? [duplicate]

提问人:crunkchitis 提问时间:10/30/2012 最后编辑:Communitycrunkchitis 更新时间:10/30/2012 访问量:6120

问:

这个问题在这里已经有答案了:
11年前关闭。

可能的重复:
ini_set() 影响范围?

我正在一个网站上工作,为了开发,我喜欢在浏览器中看到我的错误,所以我在网站顶部有以下代码:

error_reporting(E_ALL);
ini_set("display_errors", 1);

根据 php 文档,ini_set“设置给定配置选项的值。配置选项将在脚本执行期间保留此新值,并将在脚本结束时恢复。当我读到这句话时,我有点担心。似乎全局更改设置,然后在脚本末尾恢复它。ini_set()

我的问题是,这是否意味着在同一服务器上同时运行的任何其他 php 文件也会在浏览器中显示错误?

错误报告 php ini-set

评论

0赞 hakre 10/30/2012
不,这并不意味着。全局仅适用于当前处于活动状态的脚本,在全局级别。适用于所有功能等。
0赞 Deepak 10/30/2012
上述 2 行之后包含的所有文件都将返回错误。不是与此页面无关的任何其他文件。
2赞 mario 10/30/2012
它只改变当前PHP运行时/进程中的状态。它不设置 ini 文件。它最好被称为.另请注意,如果已包含致命语法错误,则在index.php中启用为时已晚,例如,当前脚本必须先成功运行,然后才能修改设置。set_ini_runtime_value()display_errors
1赞 chelmertz 10/30/2012
只是一个提示:您需要捕获所有错误。去图:)error_reporting(E_ALL|E_STRICT)
0赞 10/30/2012
@chelmertz:在 PHP 5.4 中没有 — 已修复 😊

答:

1赞 Marcin Orlowski 10/30/2012 #1

不。这个名字可能有点误导,但它只影响你当前的脚本(那个叫)。如果要进行此全局调整(或使用ini_set()php.ini.htaccess)