headers_sent
检测 HTTP 头是否已经发送
如果没有发送标头,则发送一个:
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token function">headers_sent</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string double-quoted-string">"Location: https://www.gitbox.net/"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">exit</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token delimiter important">?></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span><span class="token punctuation">></span></span> ... ...
使用可选的 file 和 line 参数:
<span class="token php language-php"><span class="token delimiter important"><?php</span> <span class="token comment">// 传入 $file 和 $line 以供后续使用</span> <span class="token comment">// 不要预先给它们赋值</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token function">headers_sent</span><span class="token punctuation">(</span><span class="token variable">$file</span><span class="token punctuation">,</span> <span class="token variable">$line</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string double-quoted-string">"Location: https://www.gitbox.net/"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">exit</span><span class="token punctuation">;</span> <span class="token comment">// 此处触发错误</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> <span class="token keyword">echo</span> <span class="token string double-quoted-string">"Headers sent in <span class="token interpolation"><span class="token variable">$file</span></span> on line <span class="token interpolation"><span class="token variable">$line</span></span>"</span><span class="token punctuation">;</span> <span class="token keyword">exit</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token delimiter important">?></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>html</span><span class="token punctuation">></span></span> <span class="token tag"><span class="token tag"><span class="token punctuation"><</span>body</span><span class="token punctuation">></span></span> ... ...