headers_sent

funkcja

Sprawdza, czy nagłówki HTTP zostały już wysłane. Zwraca true, gdy wyjście zostało rozpoczęte i nie można już modyfikować nagłówków.

headers_sent(string &$filename = null, int &$line = null): bool

headers_sent pozwala sprawdzić, czy PHP zdążyło wysłać nagłówki HTTP — co zdarza się w momencie pierwszego wyjścia (echo, HTML, a nawet biały znak przed <?php). Gdy funkcja zwraca true, wywołanie header() skończyłoby się błędem „headers already sent". Dzięki opcjonalnym parametrom $filename i $line możesz dowiedzieć się, w którym pliku i linii doszło do przedwczesnego wyjścia — nieoceniona pomoc przy debugowaniu.

<?php
declare(strict_types=1);

if (!headers_sent($plik, $linia)) {
    header('Content-Type: text/plain; charset=UTF-8');
    echo 'Nagłówek wysłany pomyślnie.';
} else {
    echo "Zbyt późno — wyjście zaczęło się w {$plik}:{$linia}";
}
📘 Naucz się w lekcji →