le MEMO du WEB développeur
••• PHP •••  Liste des Mémos, astuces et bonnes pratiques

Affichage tampon en PHP : Output buffering

Il est possible en PHP de placer du contenu dans une mémoire tampon au lieu de l'afficher à l'écran. Cela permet par exemple de traiter des informations complexes et de n'afficher le résultat que si les opérations se sont déroulées correctement.
Pour cela, on se sert des fonctions :

ob_start() : fonction d'initialisation de l'output buffering
ob_get_contents() : récupération du contenu du buffer
ob_end_clean() : arrêt de l'opération d'output buffering et nettoyage du buffer

Exemple :

<?php
  ob_start();
  echo 'Etape 2<br/>';
  echo 'Etape 3<br/>';
  $sortie=ob_get_content();
  ob_end_clean();
  echo 'Etape 1<br/>';
  echo $sortie;
?>

Affichera les étapes dans l'ordre, puisque les étapes 2 et 3 ont été affichés dans le buffer qui lui même est affiché après le "echo" de l'Etape 1

Astuce :

L'outup buffering peut être utilisé notamment pour les manipulations de la fonction header () , session_start ou de cookies qui doivent être faites avant tout premier affichage du script. Ceci permet une plus grande liberté dans leur utilisation.

publié le 26/07/2013 par Memo Web
Commenter le Mémo :

Instruction SWITCH
Opérations sur les dates en PHP
Les cookies faciles
Problème : header("Location ... ne marche pas
Fonction de parcours des variables de formulaire
Fonction extract() en PHP
Comment formater un grand nombre à l'affichage pour le rendre plus lisible (en PHP)
Fonction PHP pour réduire une chaîne à ses n premiers mots
Suppession des accents dans une phrase en PHP
Formater une chaine en URL
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos