Popis
void
ob_start
( [string output_callback])
Tato
funkce
zapíná
bufferování
výstupu
.
Pokud
je
bufferování
výstupu
aktivováno
,
žádný
výstup
ze
skriptu
se
neodešle
,
místo
toho
se
ukládá
v
interním
bufferu
.
Obsah
tohoto
interního
bufferu
je
možno
zkopírovat
do
proměnné
typu
string
pomocí
ob_get_contents(
)
.
K
odeslání
obsahu
interního
bufferu
použijte
ob_end_flush(
)
.
Naprotitomu
ob_end_clean(
)
tiše
odstraní
obsah
výstupního
bufferu
.
Můžete
zadat
volitelný
název
callback
funkce
,
která
se
automaticky
zavolá
s
obsahem
bufferu
jako
argumentem
.
Tato
funkce
musí
přijímat
řetězec
a
vracet
řetězec
.
Tato
funkce
bude
volána
při
ob_end_flush(
)
a
dostane
obsah
výstupního
bufferu
jako
svůj
argument
.
Musí
vrátit
nový
výstupní
buffer
,
který
se
pak
vytiskne
.
Výstupní
buffery
se
dají
stackovat
,
tzn
.
můžete
zavolat
ob_start(
)
zatímco
je
aktivní
další
ob_start(
)
.
Je
potřeba
pouze
správný
počet
volání
ob_end_flush(
)(
)
.
Pokud
je
akivních
více
output
callback
funkcí
,
výstup
je
filtrován
postupně
přes
každou
z
nich
tak
jak
jsou
do
sebe
vnořené
.
Příklad
1
.
Ukázka
callback
funkce
?php
function
c(
$str
)
{
/
/
Druu
Chunusun
mut
dum
Kuntrubuß..
.
return
nl2br(ereg_replace("[aeiou]"
,
"u"
,
$str))
;
}
function
d($str
)
{
return
strip_tags($str)
;
}
?
?php
ob_start("c")
;
?
Drei
Chinesen
mit
dem
Kontrabaß..
.
?php
ob_start(
"d")
;
?
h1
..saßen
auf
der
Straße
und
erzählten
sich
was..
.
/
h1
?php
ob_end_flush()
;
?
..
.
da
kam
die
Polizei
,
ja
was
ist
denn
das
?
?php
ob_end_flush()
;
?
?
|
|
Viz
také
ob_get_contents(
)
,
ob_end_flush(
)
,
ob_end_clean(
)
,
and
ob_implicit_flush(
)