Buenas, haciendo unas pruebas con header() me ha surgido la duda de cómo saber si realmente han sido enviadas en ambos casos.
En el siguiente ejemplo, si bien headers_list() devuelve las que se han definido (que no enviado), headers_sent() informa de que no han sido enviadas:
Código:
<?php
header("Status: 404 Not Found");
//flush();
print_r( headers_list() );
if( headers_sent() == true )
echo "<p>Se han enviado cabeceras</p>";
else
echo "<p>No se han enviado cabeceras</p>";
?>
Descomentando flush() para enviar lo que queda pendiente en el buffer, sí se reconocen como enviadas.
Con ello, me surge de si lo mejor es usar headers_sent() para estar completamente seguros de que han sido enviadas, y headers_list() para comprobar si han sido definidas (después de usar flush() continúan estándolo)... ¿se me escapa algo?
Gracias