A voir également:
- [PHP]Récupération code source
- Code asci - Guide
- Code puk bloqué - Guide
- Code telephone oublié - Guide
- Code activation windows 10 - Guide
- Code gta 4 ps4 - Guide
2 réponses
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 526
11 mai 2006 à 02:45
11 mai 2006 à 02:45
Salut,
Quand tu utilises des fonctions d'affichage par défaut comme echo, php envoie directement le flux au client qui a fait la requête à chaque appel de cette fonction d'affichage. Mais tu peux garder en memoire ce flux et en faire ce que tu veux: l'afficher, le mettre dans une variable, le detruire....
C'est grâce aux fonctions
ob_start(): enclenche la bufférisation de la sortie. A chaque appel d'une fonction d'affichage, rien ne sera envoyé au client, tout sera gardé en memoire.
ob_get_contents(): retourne le contenu de cette memoire
ob_end_flush(): retourne au client le contenu de la memoire puis arrête la bufférisation de la sortie (et efface le contenu de ce buffer)
Donc pour ton truc c'est simple:
Quand tu utilises des fonctions d'affichage par défaut comme echo, php envoie directement le flux au client qui a fait la requête à chaque appel de cette fonction d'affichage. Mais tu peux garder en memoire ce flux et en faire ce que tu veux: l'afficher, le mettre dans une variable, le detruire....
C'est grâce aux fonctions
ob_start(): enclenche la bufférisation de la sortie. A chaque appel d'une fonction d'affichage, rien ne sera envoyé au client, tout sera gardé en memoire.
ob_get_contents(): retourne le contenu de cette memoire
ob_end_flush(): retourne au client le contenu de la memoire puis arrête la bufférisation de la sortie (et efface le contenu de ce buffer)
Donc pour ton truc c'est simple:
ob_start(); // Tout ton code $sortie=ob_get_contents(); //Tu enregistres le contenu de $sortie dans un fichier /*Puis tu envoies la page au client (si tu as envie, sinon utilise ob_end_clean() )*/ ob_end_flush();