[英]PHP: Demonstrate Headers Already Sent
注意:我不是要解決headers already sent
的headers already sent
問題。 我正在嘗試創建一個!
我以為我了解導致此錯誤的原因,因此我正在嘗試向一些學生演示該錯誤。 這是一個示例腳本:
Hello
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
print 'This space for rent …';
setcookie('test',12);
header('Testing');
?>
如您所見,在設置標頭之前,我正在盡最大努力發送輸出,或者通過設置cookie間接地或者直接使用header()
函數。
問題聽起來很奇怪,我如何才能顯示此錯誤?
如果在php.ini中啟用了輸出緩沖,則在捕獲並發送輸出時不會拋出錯誤。 這有點像防止這些錯誤的“懶人”方式,而不是實際修復導致它們的腳本。 您可以通過將其關閉或在輸出之前用ob_end_clean()之類的內容結束輸出緩沖來創建錯誤(然后輸出,然后輸出標頭)
要創建此錯誤,只需在頁眉之后的任何位置使用header()函數。
<html>
<head>
<title>.....</title>
</head>
<?php
header("location:index.php");
?>
確保您的php.ini也設置為顯示這些錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.