2016-07-26 108 views
1

我有一個值近11000值的數組。什麼情況導致PHP foreach循環終止?

array=(1,2,3..............................., 11000) 

當我嘗試使用foreach迭代數組時,它終止了第9749項的執行並且未執行。請讓我知道在循環內停止執行的問題是什麼?

注意: 我沒有在循環中使用任何中斷或死亡。

+1

可能是您將max_execution_time設置爲下限? –

+0

它顯示任何錯誤? – Avishake

+1

請發佈循環代碼。否則顯然我們無法幫助你! –

回答

0

首先,你應該enable displaying PHP errors,因爲PHP會告訴你什麼是問題。您執行暫停3個最常見的原因是:

  • max_execution_time - 設置最大時間以秒爲腳本允許它被分析器終止前運行(默認:30秒)。

  • memory_limit - 這設置腳本允許分配的最大內存量(以字節爲單位)。如果你達到這個限制,執行就會停止。

  • xdebug.max_nesting_level - 如果您啓用了xdebug並且正在使用遞歸函數,當您點擊嵌套函數限制(默認值:256)時,執行將暫停。

+0

其實我增加了除xdebug.it之外的所有那些運行2000數組的值。對於那些頁面加載正常。但是對於10000,它顯示空白頁面。即使我添加了代碼錯誤啓用代碼,也沒有任何錯誤消息。 –

+0

你確定你啓用了錯誤嗎?寫一些不好的代碼,看看是否出現錯誤。或者你可以直接檢查php錯誤日誌文件。 – beardedlinuxgeek

+0

@ beardedlinuxgeek是的,我得到了內存exahusted錯誤。 –