Maison  >  Article  >  développement back-end  >  Comment activer la mise en mémoire tampon de sortie à l'aide de la fonction ob_start() en PHP ? (exemple de code)

Comment activer la mise en mémoire tampon de sortie à l'aide de la fonction ob_start() en PHP ? (exemple de code)

青灯夜游
青灯夜游original
2019-03-09 11:05:503454parcourir

En PHP, nous pouvons utiliser la fonction ob_start() pour activer la mise en mémoire tampon de sortie. L'article suivant vous donnera une brève compréhension de la façon d'utiliser la fonction ob_start(). J'espère qu'elle vous sera utile. [Recommandation du didacticiel vidéo : Tutoriel PHP]

Comment activer la mise en mémoire tampon de sortie à l'aide de la fonction ob_start() en PHP ? (exemple de code)

PHP est un langage interprété, et chaque instruction est exécutée l'une après l'autre, donc PHP a tendance à envoyer du HTML au navigateur en morceaux, ralentissant les performances. Grâce à la mise en mémoire tampon de sortie, toutes les informations de sortie ne sont plus envoyées directement au navigateur, mais sont enregistrées dans le tampon de sortie ou dans une variable de chaîne, et le contenu du tampon ne sera envoyé au navigateur qu'après l'exécution de la dernière instruction du script PHP. . Le navigateur effectue le rendu et l'affichage.

Mais la mise en mémoire tampon de sortie n'est pas activée par défaut ; afin d'activer la mise en mémoire tampon de sortie, vous devez utiliser la fonction ob_start() avant de faire écho à tout contenu HTML dans le script.

Syntaxe de base :

ob_start ()

Paramètres : La fonction ob_start() peut accepter un tas de paramètres facultatifs, comme indiqué ci-dessous :

●Fonction de rappel : Il s'agit d'un paramètre facultatif qui nécessite une fonction qui récupère le contenu du tampon de sortie et renvoie une chaîne, qui sera envoyée au navigateur pour le rendu. Les fonctions de rappel sont souvent utilisées pour compresser le contenu HTML.

● Taille du morceau : il s'agit d'un autre paramètre facultatif qui définit la taille du tampon de sortie de la taille fournie et sort immédiatement lorsque le tampon est plein ou dépassé.

● Flags : Il s'agit d'un autre paramètre facultatif qui accepte un masque de bits pour contrôler les opérations qui peuvent être effectuées sur le tampon de sortie. Passez ce paramètre pour restreindre l'accès. Les autorisations par défaut permettent d'accéder aux tampons de nettoyage, de vidage et de suppression.

Type de retour : La fonction ob_start() renvoie VRAI en cas de succès, sinon elle renvoie FAUX.

Exemple de code :

<?php 
header("content-type:text/html;charset=utf-8");
function callback($buffer){
//返回缓冲区内的所有东西
    return (strtoupper($buffer.",javascript,html,css!")); 
} 
  
ob_start("callback"); 
echo "Hello php"; 
ob_end_flush(); 
  
?>

Sortie :

Comment activer la mise en mémoire tampon de sortie à laide de la fonction ob_start() en PHP ? (exemple de code)

Instructions :

Quantity Pour utiliser le tampon, vous devez d'abord démarrer le tampon.

Quantity L'indicateur du tampon de sortie peut être de quatre types :

1. PHP_OUTPUT_HANDLER_CLEANABLE (uniquement propre)

2. PHP_OUTPUT_HANDLER_FLUSHABLE (uniquement vide)

3 . PHP_OUTPUT_HANDLER_REMOVABLE (supprimer uniquement)

 4. PHP_OUTPUT_HANDLER_STDFLAGS (autorisé chaque opération).

●Le tampon de sortie est empilable, donc s'il est fermé/vidé dans l'ordre, la méthode ob_start imbriquée est autorisée () et fonctionne selon les besoins.

La fonction ●ob_end_flush() est utilisée pour fermer le tampon de sortie après avoir terminé (envoi) le contenu du tampon de sortie.

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn