2009-12-11 7 views
4

Je lance mon script à partir de la ligne de commande et il sort les choses comme elles se produisent mais il y a une semaine, il a cessé de produire et affiche maintenant tout quand le script se termine. J'ai ob_start() mais comme je sais, cela n'affecte pas la sortie de la ligne de commande.Sortie PHP vers la ligne de commande

+1

Pouvez-vous s'il vous plaît poster cette partie de base du script ici? Quelle version de PHP et sur quel environnement? –

Répondre

5

Vous devez supprimer ob_start() ... essayez ce code sur la ligne de commande, et il imprime le texte à la fois:

<? 
ob_start(); 
echo "test\n"; 
sleep(10); 
echo "buffer\n"; 
?> 
+1

Je pensais que ob_star() ne fonctionne pas en ligne de commande, mais c'est vraiment le cas, cela a résolu le problème. – dfilkovi

0

Il serait très utile si vous pouvez poster ici votre script, au moins les parties concernées, mais choses que je test sont:

  • Est-ce que vous mettez en mémoire tampon?
  • Exécutez-vous le processus dans quelque chose comme un nohup ou quelque chose d'autre qui peut le mettre en mémoire tampon?
  • Avez-vous modifié d'autres paramètres de mise en mémoire tampon?

La sortie seulement à la fin du script semble un problème de mise en mémoire tampon.

Questions connexes