/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
flush() virker ikke mere?!?
Fra : Leif Neland


Dato : 15-06-11 12:42

I et (internt, så det behøver ikke være pænt) script, der først skal
lave en del opslag, før der kommer output har jeg lavet

foreach (....) {
do_something();
echo ". ";
flush();
}

så der kom en række prikker, så man kunne se der skete noget.

Efter en debian-opgradering, der gik i kage, så der ikke kunne bootes,
var det hurtigste at tilføje en ny disk (vmware) og installere frisk på
den, og derefter mounte den gamle /home på den, og kopiere
/etc/apache2/sites*-filer over.

Men nu fungerer flush() ikke; der kommer først output, når scriptet er
færdigt.

/home med <DocumentRoot> i er jo den samme disk, og
/etc/apache2 har ingen "diff -r"er til /old/etc/apache2 dvs
konfigfilerne er også ens.

Kerne 2.6.26-2-686
# apache2 -v
Server version: Apache/2.2.16 (Debian)
Server built: Mar 22 2011 20:56:31

# cat /etc/debian_version
6.0.1

Så hvad f... er der så i vejen, når det samme script med samme
konfigfiler opfører sig anderledes?

Leif

 
 
Bertel Lund Hansen (15-06-2011)
Kommentar
Fra : Bertel Lund Hansen


Dato : 15-06-11 20:28

Leif Neland skrev:

> foreach (....) {
> do_something();
> echo ". ";
> flush();
> }

> så der kom en række prikker, så man kunne se der skete noget.

Indføj:

   ob_flush();

før flush-linjen.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177416
Tips : 31962
Nyheder : 719565
Indlæg : 6407859
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste