OB_END_FLUSH |
Fin de vidage |
| PHP 4+ |
Syntaxe
Retour
| Valeur |
Description |
| false |
Cette valeur permet d'indiquer qu'une erreur s'est produit. |
| true |
Cette valeur permet d'indiquer que l'opération a été un succès. |
Description
Cette fonction permet de vider et d'envoyer la valeur de retour du gestionnaire de sortie actif et de désactiver le tampon de sortie actif.
Remarques
- ob_end_flush() vide le contenu du tampon de sortie actif et le désactive immédiatement : Elle permet de transmettre toutes les données accumulées
dans le tampon courant au client, tout en mettant fin au tampon actif. Cela signifie qu'aucune nouvelle donnée ne pourra y être écrite après cet appel.
- Elle est indispensable pour conclure proprement une phase de mise en tampon : Quand plusieurs tampons de sortie sont imbriqués, l'appel à
ob_end_flush() permet de gérer finement leur fermeture progressive, en s'assurant que le contenu est bien transmis avant suppression.
- Cette fonction est particulièrement utile pour forcer l'affichage du contenu généré avant la fin du script : Par exemple, dans des scripts longs ou
interactifs, elle peut être utilisée pour envoyer une partie du contenu immédiatement, tout en libérant les ressources du tampon.
- ob_end_flush() échoue si aucun tampon de sortie n'est actif : Pour fonctionner correctement, un tampon doit avoir été démarré au préalable avec
ob_start(). Sinon, l'appel retournera false et n'aura aucun effet.
- Elle est souvent utilisée en combinaison avec des fonctions comme ob_get_contents() et ob_start() : Cela permet de capturer, manipuler, puis libérer
le contenu tamponné selon une logique personnalisée, par exemple pour l'enregistrement dans un fichier ou la compression.
- Le vidage du tampon ne garantit pas immédiatement l'envoi au client sans appel à flush() : Dans certains cas, notamment en présence de tampons
côté serveur ou client, il est nécessaire d'utiliser aussi flush() après ob_end_flush() pour forcer
l'envoi des données.
- Cette fonction est utile pour optimiser la gestion mémoire du script : En désactivant un tampon inutile après l'envoi de son contenu, on évite que le
serveur ne conserve des données superflues, ce qui peut être important dans des environnements à fort trafic.
- ob_end_flush() est préférée à ob_flush() lorsqu'on souhaite également libérer le tampon après l'avoir vidé : Contrairement à
ob_flush() laissant le tampon actif, ob_end_flush() agit comme une fermeture propre de la session de mise en tampon.
Dernière mise à jour : Samedi, le 3 mai 2025