Maison  >  Article  >  développement back-end  >  Comment fermer ob_start en php

Comment fermer ob_start en php

藏色散人
藏色散人original
2021-11-19 10:58:121986parcourir

php ob_start est utilisé pour ouvrir le tampon de contrôle de sortie. Pour fermer ob_start, vous pouvez utiliser la fonction ob_end_clean() pour supprimer silencieusement le contenu du tampon.

Comment fermer ob_start en php

L'environnement d'exploitation de cet article : système windows7, version PHP7.1, ordinateur DELL G3

Comment fermer ob_start en php ?

ob_start — Ouvrir le tampon de contrôle de sortie

Description

ob_start(callable $output_callback = null, int $chunk_size = 0, int $flags = PHP_OUTPUT_HANDLER_STDFLAGS): bool

Cette fonction ouvrira le tampon de sortie. Lorsque la mise en mémoire tampon de sortie est activée, le script n'affichera pas de contenu (sauf les en-têtes http), mais le contenu à afficher est stocké dans un tampon interne.

Le contenu du tampon interne peut être utilisé La fonction ob_get_contents() 函数复制到一个字符串变量中。 想要输出存储在内部缓冲区中的内容,可以使用 ob_end_flush() 函数。另外, 使用 ob_end_clean() supprimera silencieusement le contenu du tampon.

AVERTISSEMENT

Certains serveurs Web (tels qu'Apache) modifieront le répertoire de travail d'un script lorsqu'une fonction de rappel est appelée. Vous pouvez le modifier dans la fonction de rappel, par exemple chdir(dirname($_SERVER['SCRIPT_FILENAME'])) .

Le tampon de sortie est empilable, ce qui signifie que lorsqu'un ob_start() est actif, vous pouvez appeler un autre ob_start(). Assurez-vous simplement d'appeler ob_end_flush() le nombre correct de fois. Si plusieurs rappels de sortie sont actifs, la sortie sera toujours filtrée à travers eux dans un ordre imbriqué.

Paramètres

output_callback

Paramètres facultatifs La fonction output_callback peut être spécifiée. Cette fonction prend une chaîne comme argument et renvoie une chaîne. Cette fonction sera appelée lorsque le tampon de sortie est vidé (émis) ou nettoyé (ob_flush(), ob_clean() ou fonctions similaires) ou lorsque le contenu du tampon de sortie est vidé vers le navigateur à la fin de l'appel de la requête. . Lorsque output_callback est appelé, il reçoit le contenu du tampon de sortie en tant que paramètre et devrait en conséquence renvoyer un nouveau tampon de sortie. Le contenu de ce tampon de sortie nouvellement renvoyé sera envoyé au navigateur. Si ce output_callback n'est pas une fonction appelable, cette fonction retournera false.

Ce qui suit est la signature de rappel :

handler(string $buffer, int $phase = ?): string

buffer

Le contenu du tampon de sortie.

phase

Masque de bits Constantes PHP_OUTPUT_HANDLER_*.

Si output_callback renvoie false , le contenu d'entrée d'origine est envoyé directement au navigateur.

Ce paramètre output_callback peut être évité en donnant directement une valeur nulle.

ob_end_clean(), ob_end_flush(), ob_clean(), ob_flush() et ob_start() ne peuvent pas être appelés depuis une fonction de rappel. S'ils sont appelés depuis une fonction de rappel, le comportement résultant n'est pas spécifié. Si vous souhaitez supprimer le contenu du tampon, renvoyez un "" (chaîne vide) de la fonction de rappel. Il n'est pas non plus possible d'utiliser des fonctions de mise en mémoire tampon de sortie comme print_r($expression, true) ou highlight_file($filename, true) à partir d'une fonction de rappel.

注意:
ob_gzhandler() function exists to facilitate sending gz-encoded data to web browsers that support compressed web pages. ob_gzhandler() determines what type of content encoding the browser will accept and will return its output accordingly.

chunk_size

Si le paramètre facultatif chunk_size est attribué, le tampon sera vidé après toute opération de sortie qui fait que la longueur du tampon est égale ou supérieure à chunk_size. La valeur par défaut 0 signifie que la fonction n'est appelée qu'à la fin.

Avant PHP 5.4.0, 1 était une valeur de cas spécial qui définissait chunk_size à 4096 octets. Le paramètre

flags

flags représente un bit de masque utilisé pour contrôler les opérations sur le tampon. La valeur par défaut est d'autoriser le nettoyage, le vidage et la suppression des tampons de sortie, qui peuvent être définis explicitement via PHP_OUTPUT_HANDLER_CLEANABLE | PHP_OUTPUT_HANDLER_FLUSHABLE | PHP_OUTPUT_HANDLER_REMOVABLE, ou PHP_OUTPUT_HANDLER_STDFLAGS comme raccourci.

Valeur de retour

Renvoie vrai en cas de succès ou faux en cas d'échec.

Apprentissage recommandé : "Tutoriel vidéo PHP"

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