【发布时间】:2019-07-08 11:45:41
【问题描述】:
许多有经验的开发人员都知道函数 defined() 比任何其他检查慢 19 倍左右。
我遇到了一个问题,我需要有超过 5000 条记录的循环和 7 个defined() 在序列中的检查,并且该减速完成了项目。
在这种情况下,无法更改项目工作或分块的方式。是否有一些好的解决方案或想法如何避免defined() 功能?
【问题讨论】:
-
没有进一步的上下文很难说。你用这些常量做什么?您的流程的哪一部分适合更改?但这听起来很奇怪。我相当低端的计算机在冷运行后的 26 毫秒内运行 7 * 5000 次定义检查的循环(下次执行时为 13 秒)。这真的是您需要完成的优化级别吗?
-
计算一次
defined()并将结果存储到一个变量中。在循环中,检查变量。
标签: php performance