我偶然发现的东西看起来很有趣,唤醒了我的好奇心。我在一篇微优化文章中读到,当我需要UNIX时间戳时,使用当前存在的$_SERVER['REQUEST_TIME']
而不是调用time()
是明智的。我想问一下这首先是否可靠,如果我确定我的应用程序将始终在HTTP下运行,其次,将默认的time()
函数覆盖为
function time(){
return $_SERVER['REQUEST_TIME'];
}
因为重构 - 没有人得到时间了!
答案 0 :(得分:1)
这是有道理的,但这不正确。因为使用time()
的时间是当前准确的系统时间,而$_SERVER['REQUEST_TIME']
是在请求页面时由PHP填充的常量。如果页面需要花费时间加载并且最后调用$_SERVER['REQUEST_TIME']
,则time()
和$_SERVER['REQUEST_TIME']
的值之间会有所不同。
同样重写time()
也不是个好主意。因为在直接调用$_SERVER['REQUEST_TIME']
时,没有由php维护的堆栈,但是当覆盖time()
(总是在你的代码天气中调用或不调用)时,从应用程序架构的系统资源来看会花费更多观点看法。