Ce face ob_implicit_flush
Cu ob_implicit_flush(true), PHP face singur un flush() după fiecare echo, deci nu mai trebuie să îl apelezi tu. În linia de comandă această setare este pornită implicit.
Nu are efect asupra bufferelor deschise cu ob_start: textul rămâne în ele până le golești. Din PHP 8.0 parametrul este bool, nu număr întreg.
Parametri
| Parametru | Descriere |
|---|---|
$enable |
Opțional. true pornește trimiterea automată, false o oprește. |
Ce returnează
Nimic.
Exemple
Exemplul 1: Mesaje trimise imediat, într-un script lung
<?php
ob_implicit_flush(true);
foreach ([1, 2, 3] as $lot) {
echo "Lotul $lot a fost procesat\n";
}
Rezultat
Lotul 1 a fost procesat
Lotul 2 a fost procesat
Lotul 3 a fost procesat
Greșeli frecvente
- Pornești
ob_implicit_flushși textul tot nu apare imediat. Probabil există un buffer deschis cuob_startsau de setareaoutput_buffering. Închide-l înainte.
Comenzi înrudite
flush: Trimite imediat spre browser tot ce a fost afișat până acum.ob_flush: Trimite mai departe conținutul bufferului curent și îl golește, fără să îl închidă.ob_get_level: Returnează câte buffere de ieșire sunt deschise, unul în altul.