PHP  
downloads | documentation | faq | getting help | | php.net sites | links 
search for in the  
previousovrimos_rollbackflushnext
Last updated: Tue, 11 Jun 2002
view this page in Printer friendly version | English | Brazilian Portuguese | Czech | Dutch | Finnish | German | Hungarian | Italian | Japanese | Korean | Polish | Romanian | Russian | Spanish | Turkish

LXXIII. Entr�es/sorties

Les fonctions d'entr�e/sorties vous permettent de contr�ler quand les donn�es ont �t� envoy�es par le script. Cela peut �tre utile dans certaines situations, notamment si vous devez envoyer des en-t�tes au navigateur apr�s avoir envoy� des donn�es. Ces fonctions n'affectent pas les en-t�tes envoy�es par la fonction header() ou les cookies envoy�s par setcookie(). Seules les fonctions telles que echo() et les donn�es entre blocs PHP sont affect�es.

Exemple 1. Exemple de gestion des sorties

<?php
ob_start();
echo "Bonjour\n";
setcookie ("nom_du_cookie", "valeur_du_cookie");
ob_end_flush();
?>

Dans l'exemple ci-dessus, la fonction echo() est stock�e dans un buffer jusqu'� l'appel de la fonction ob_end_flush(). Dans le m�me temps, l'appel � setcookie() a r�ussi � cr�er un cookie, sans g�n�rer d'erreur. (D'habitude, vous devez envoyer les en-t�tes avant les donn�es).

Voir aussi header() et setcookie().

Table des mati�res
flush -- Vide les buffers de sortie.
ob_clean --  Clean (erase) the output buffer
ob_end_clean --  D�truit les donn�es du buffer de sortie, et �teint la bufferisation de sortie
ob_end_flush --  Envoie les donn�es du buffer de sortie, et �teint la bufferisation de sortie
ob_flush --  Flush (send) the output buffer
ob_get_contents --  Retourne le contenu du buffer de sortie
ob_get_length --  Retourne la longueur du contenu du buffer de sortie
ob_get_level --  Return the nesting level of the output buffering mechanism
ob_gzhandler --  Fonction de callback pour la compression automatique des buffers
ob_implicit_flush --  Active/d�sactive l'envoi implicite
ob_start -- Enclenche la bufferisation de sortie
User Contributed Notes
Entr�es/sorties
add a note about notes

08-Feb-2001 05:17

A few tutorials exist on this subject :

* 
* 

fredrik at rambris dot com
18-Feb-2002 12:53

A cool way to use this is to run the output through HTML-tidy and get
really nicelooking output without having to manually add indenting etc.
Try this at the end (after doing an ob_start before outputting anything).

<?php
	$str=addslashes(ob_get_contents());
	$fp=popen("echo \"" . $str . "\" | /usr/bin/tidy
-i -u -q -latin1 --indent-spaces 1 -wrap 0", "r");
	@$newstr=fread($fp, 99999);
ob_end_clean();
	Header( "Content-length: " . strlen( $newstr ) );
	echo $newstr;
?>


06-Apr-2002 03:25

You can use the ob_*-functions to replace the PHP variables in a file with
its actual content. It is useful when you have a template file which
includes some variables, like "User=$user" a.s.o. (Probably
there is an easier way?):

$sf = fopen($sourcefile, "r");
$df = fopen($destfile, "w");

ob_start();
while( !feof($sf) )
{
	$line = fgets($sf, 4096);
	$eval = "echo \"".addslashes($line)."\";";
	eval($eval);
	$line = ob_get_contents();
	fputs($df, stripslashes($line));
}
ob_end_clean();

Possibly, it helps someone...

add a note about notes
previousovrimos_rollbackflushnext
Last updated: Tue, 11 Jun 2002
show source | credits | stats | mirror sites:  
Copyright © 2001, 2002 The PHP Group
All rights reserved.
This mirror generously provided by:
Last updated: Mon Jul 8 12:18:18 2002 CEST