【发布时间】:2016-05-04 03:36:28
【问题描述】:
我的代码中有一个 for 循环。我已经有 5 到 6 天没有对这部分代码进行任何更改,而且我从来没有遇到过任何问题。
从昨天开始我尝试重新加载我的代码,它总是给我这个错误:
Maximum execution time of 30 seconds exceeded - in LogController.php line 270
好吧,我无法解释原因,但也许你们中的某个人可以查看一下。
这是我在第 270 行附近的代码。
$topten_sites = [];
for ($i = 0; $i <= count($sites_array); $i++) {
if ($i < 10) { // this is 270
$topten_sites[] = $sites_array[$i];
}
}
$topten_sites = collect($topten_sites)->sortByDesc('number')->all();
正如我所说,它运行良好,为什么它给我一个错误?如果我取消注释这些行以及包含 $topten_sites 数组的所有其他行,代码将再次运行。
【问题讨论】:
-
你的 for 循环中有些东西很奇怪,
$i <= $sites_array部分。我觉得应该是$i <= count($sites_array) -
我同意@PrinceG - 需要更改为
count($sites_array)或sizeof($sites_array) -
仅供参考 icosaedro.it/phplint 发现此错误。