首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >php.ini和ini_set()哪个更好?

php.ini和ini_set()哪个更好?
EN

Stack Overflow用户
提问于 2013-11-15 19:30:57
回答 3查看 2.7K关注 0票数 2

我有一个简单的问题,我应该写设置或php.ini文件,还是在php文件上使用ini_set()。关于性能,哪一个更好?

非常感谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-15 19:32:40

取决于你的目标。默认情况下,php.ini设置将应用于所有php应用程序,ini_set将动态更改当前php应用程序的php设置。

如果你有性能问题,php.ini应该更快,因为你跳过了ini_set的函数调用。

票数 7
EN

Stack Overflow用户

发布于 2018-10-24 07:01:29

在典型的2018年硬件上,运行ini_set('date.timezone', $timezone) 1,000,000次大约需要500毫秒。

对于PHP7.1,ini_set()绝对不比加载另一个.ini文件慢。事实上,使用require()在第二个文件中运行ini_set()比加载.ini文件更快。

即使是一个空的.ini文件也会有一些开销。我怀疑在内部,.ini文件会做一些类似于ini_set的事情。

代码语言:javascript
复制
# Baseline (no .ini, empty script)
$ time for ((i=0;i<1000;i++)); do php -n empty.php; done
real    0m21.214s

# php.ini: date.timezone = Australia/Sydney
$ time for ((i=0;i<1000;i++)); do php -c php.ini empty.php; done
real    0m23.015s

# inline.php: <?php ini_set('date.timezone', 'Australia/Sydney') 
$ time for ((i=0;i<1000;i++)); do php -n inline.php; done
real    0m21.150s

这些数字似乎很有代表性。然而,这里的性能差异并不是那么有意义。这可能归结为您需要什么样的环境一致性和灵活性。

票数 3
EN

Stack Overflow用户

发布于 2013-11-15 19:36:14

因为我认为ini_set()是比打开你的ini文件并做修改更好的方法,因为如果你改变ini设置一次以上,它将适用于你所有的php项目,但在ini_set()中,你甚至不需要考虑你的其他php应用程序。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20000111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档