Autor Zpráva
user243
Profil
Hoj,
při psaní kódu, se mi vyskytl problém, že potřebuji v půlce stránky nastavit cookies, ale už se nějaká data odeslala; šlo by to nějak umístit na začátek stránky, ale trochu by to vyčnívalo a některé věci by se volali zbytečně víckrát;
proto mě napadlo použít ob_start();
můj kód vypadá nějak takto:
//... nějaké funkce, nic se nevypisuje

ob_start();
//všechen obsah budoucí stránky
ob_end_flush();
ob_end_clean(); 
ale na manuálu jsem se dočetl, že ob_end_clean() odhodí hlavičky, takže v tom příkladu ji volá ještě před ob_start(). Nepoužívám FirePHP, ale nástroje pro vývojáře v chrome.
Bude pro mě lepší použít tu funkci před ob_start(), nebo až na konci? Nebo je nějaké lepší řešení?
Keeehi
Profil
ob_end_flush odešle to co je v bufferu na výstup a vyprázdní buffer
ob_end_clean vyprázdní buffer tím, že obsah prostě zahodí

Když se program dostane k ob_end_clean, tak se nemá co zahazovat, protože ob_end_flush právě buffer odeslala a vyprázdnila. ob_end_clean() je tedy naprosto zbytečná.
Nezapomeň, že to _end_ znamená to, že ty funkce ukončují bufferování, takže další výstupy se už nebufferují.
user243
Profil
Aha, díky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: