检查内容是否已在PHP中发送

检查内容是否已在PHP中发送,php,http-headers,Php,Http Headers,是否有一种智能的方法来检查输出是否已经发送到浏览器,并且发送一个标题将生成一个PHP_警告 显然,可以选择使用输出缓冲区,但这并不总是一个选项。如果您只想隐藏警告,只需关闭: 或者,您可以将PHP错误和警告重定向到日志文件(在生产环境中,IMO更可取)。您可以使用headers\u sent()方法。这是因为在输出任何内容之前,将首先发送标题。做得不好,并且在输出已发送的情况下(例如通知和警告)不会始终返回TRUE 作为替代方案,我使用以下方法: <?php $obStatus = ob

是否有一种智能的方法来检查输出是否已经发送到浏览器,并且发送一个标题将生成一个PHP_警告


显然,可以选择使用输出缓冲区,但这并不总是一个选项。

如果您只想隐藏警告,只需关闭:


或者,您可以将PHP错误和警告重定向到日志文件(在生产环境中,IMO更可取)。

您可以使用headers\u sent()方法。这是因为在输出任何内容之前,将首先发送标题。

做得不好,并且在输出已发送的情况下(例如通知和警告)不会始终返回TRUE

作为替代方案,我使用以下方法:

<?php

$obStatus = ob_get_status();

if ($obStatus['buffer_used'] > 0) {
    echo 'Content was sent';
} else {
    echo 'Content was NOT sent';
}

<?php

$obStatus = ob_get_status();

if ($obStatus['buffer_used'] > 0) {
    echo 'Content was sent';
} else {
    echo 'Content was NOT sent';
}