簡體   English   中英

嘗試捕獲塊未攔截錯誤

[英]Error is not intercepted by try catch block

PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted
(tried to allocate 32768 bytes) in
/vendor/symfony/debug/Exception/FatalErrorException.php on line 1  PHP Stack trace:

我收到以下錯誤,該錯誤未在try catch塊中攔截。

use \Exception as Exception;

try {
   $this->recursiveCall();
} catch (ErrorException $ex) {
    exit;
}catch (Exception $ex) {
    exit;
}

如果在php.ini中提高到memory_limit = 512M ,它可以正常工作,但令我困擾的是未處理錯誤。

我讀過您可以編寫自己的php錯誤回調,但恐怕Laravel錯誤處理可能取決於此。

有什么想法如何處理該問題? 10倍

捕獲對於致命錯誤不起作用。 您可以對異常使用try-catch,但是致命錯誤實際上會“破壞”您的程序,您不能簡單地捕獲它們,必須解決它們。 並不是說不應該解決異常警告,但它們並不像致命錯誤那樣重要。

我看到的解決方案是優化查詢(也許增加限制可能會有所幫助),或者按照您的建議增加內存大小。

此錯誤通常是由於“數據處理過多”所致,因此您可以縮小數據范圍以使腳本運行得更快,或者增加限制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM