Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/08/2011, 03:59
MikiBroki
 
Fecha de Ingreso: abril-2002
Mensajes: 1.014
Antigüedad: 22 años
Puntos: 8
Saber si realmente se han enviado las cabeceras

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