簡體   English   中英

PHP輸出緩沖區

[英]PHP Output buffer

我自己的PHP框架解析這樣的文件以獲取內容:

ob_start();
include($file);
$content = ob_get_clean();

但是,現在我正在使用自己的error_handler來顯示錯誤頁面,即使發生任何錯誤,即使該錯誤正發生在如上述代碼段所示的已解析模板中也是如此。

有趣的是,例如由於錯誤而導致代碼執行終止時,所包含模板的內容會打印到瀏覽器中。 當然,這會使我的錯誤頁面看起來非常糟糕。

打開輸出緩沖區是否應該阻止打印內容?

特別是因為ob_get_clean()在解析內容后應清除內容。

為什么會這樣呢?

如果我沒有遇到錯誤,則說明網站正在按預期運行。

我該如何解決這個問題?

我想我也有同樣的問題。 嘗試使用ob_clean():

try {
    $app = new App($some_config);
    $app->run();
} 
catch (Exception $e) {
    ob_clean();
    // Display your error page.
}

暫無
暫無

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

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