簡體   English   中英

PHP Try / Catch塊暫停代碼執行

[英]PHP Try/Catch block halting code execution

我正在運行以下代碼:

    try {

        $count = $user[0]->followers_count;

    } catch (Exception $e) {

        return 'error';
    }

    dd('continuing execution');

輸出以下內容:

Twitter.php第174行中的FatalErrorException:無法將類型為stdClass的對象用作數組

現在,引用來自https://stackoverflow.com/a/13955721/2724978

首先,應該明確指出,只有在未捕獲到異常的情況下,它才是致命的。 捕獲異常不會停止腳本執行。

我的代碼即使在try / catch塊中,也無法繼續執行。 我很確定我缺少什么,那是什么?

好吧,我發現的答案是在PHP中,錯誤和異常是不同的東西。可以捕獲異常,並且代碼不會停止。 另一方面,諸如FatalErrorException之類的錯誤將始終停止應用程序,即使該應用程序位於try / catch塊中也是如此。

沒辦法,必須編寫代碼來檢查變量類型。

另外,另一件事..有時(例如在laravel中),您必須使用\\ Exception而不是Exception。

暫無
暫無

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

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