Fonction PHP OB_START

Fonction PHP OB_START
L'OB_START () est une fonction intégrée de PHP pour permettre la mise en mémoire tampon de sortie. Si la mise en mémoire tampon de sortie est activée, toutes les sorties seront stockées dans le tampon interne et aucune sortie du script ne sera envoyée au navigateur. Certaines autres fonctions intégrées sont utilisées avec OB_START (). La fonction ob_get_content () est utilisée pour stocker le contenu du tampon interne dans une variable.

La fonction ob_end_flush () est utilisée pour imprimer le contenu du tampon interne. La fonction ob_end_clean () est utilisée pour nettoyer le contenu du tampon interne. Les utilisations de la fonction ob_start () dans PHP ont montré ce tutoriel.

Syntaxe:

Tous les arguments des fonctions ob_start () sont facultatifs et cela peut prendre trois arguments. La syntaxe de cette fonction est donnée ci-dessous.

bool ob_start (callable $ callback = null, int $ chunk_size = 0, int $ flags = php_output_handler_stdflags)
  • Le premier argument facultatif prend un nom de fonction de rappel pour modifier le contenu du tampon avant d'envoie à la sortie.
  • La deuxième valeur facultative est utilisée pour définir la taille du tampon et la valeur par défaut de cet argument est 0.
  • Le troisième argument facultatif est utilisé pour définir le masque de bid qui définit les opérations autorisées et lesquelles ne sont pas autorisées. La valeur par défaut de cet argument est php_output_handler_stdflags qui indique que ob_flush (), ob_clean (), ob_get_flush (), ob_end_flush () et ob_end_clean ().
  • Il revient vrai sur le succès et les retours FAUX en cas de défaillance.

Différentes utilisations de la fonction ob_start ()

Les utilisations de la fonction OB_START () avec d'autres fonctions liées au tampon ont été expliquées dans cette partie du tutoriel.

Exemple-1: utilisation de la fonction ob_start () sans aucun argument

Créez un fichier PHP avec le script suivant pour connaître l'utilisation de la fonction ob_start () sans aucun argument. Deux valeurs de chaîne ont été envoyées au tampon après avoir appelé la fonction ob_start (). La fonction ob_end_clean () a été appelée dans le script pour nettoyer le tampon après avoir appelé la fonction ob_start () la première fois. Pour cela, la première chaîne sera supprimée du tampon et la deuxième chaîne sera imprimée dans la sortie.

// Appel OB_START () Fonction Première fois
ob_start ();
// imprime la valeur de la chaîne
Echo "Tester la valeur de la chaîne1
"
// Nettoyez le tampon
ob_end_clean ();
// Appel OB_START () Fonction Deuxième fois
ob_start ();
// imprime la valeur de la chaîne
Echo "Tester la valeur de la chaîne2
"
?>

Sortir:

La sortie suivante sera apparue après avoir exécuté le script ci-dessus.

Exemple-2: utilisation de la fonction ob_start () avec fonction de rappel

Créez un fichier PHP avec le script suivant pour connaître l'utilisation de la fonction ob_start () avec une fonction de rappel. Une variable de chaîne est déclarée dans le script. La fonction de rappel () a été déclarée remplacer la partie particulière de la variable de chaîne avant de rincer la sortie du tampon. La fonction ob_start () est appelée avec le premier argument qui appellera la fonction de rappel () et renverra la chaîne modifiée dans le tampon. Ensuite, la fonction ob_end_flush () a utilisé pour rincer le contenu du tampon dans le navigateur.

// Déclarer une variable de chaîne
$ str = "J'aime la programmation PHP.
"
écho "La chaîne d'origine: $ str ";
// définir la fonction de rappel
rappel de fonction ($ tampon)

// remplace le mot «php» par «python»
return (str_replace ("php", "python", $ buffer));

écho "La chaîne remplacée:"
// appelle la fonction ob_start () avec la fonction de rappel
ob_start ("rappel");
Echo $ str;
// imprime le contenu du tampon interne
ob_end_flush ();
?>

Sortir:

La sortie suivante sera apparue après avoir exécuté le script ci-dessus. Selon la sortie, le mot «php» de la chaîne a été remplacé par le mot, «python». La chaîne, 'J'aime la programmation PHP's'est converti en chaîne,'J'aime la programmation Python'par la fonction de rappel ().

Exemple-3: utilisation de la fonction ob_start () avec la valeur Bitmask

Il est mentionné précédemment que la valeur de bitmask par défaut de la fonction ob_start () est php_output_handler_stdflags. Cette fonction a de nombreuses autres valeurs de massasque.

Les utilisations de php_output_handler_cleanable et php_output_handler_flushable bitmasks ont montré dans cet exemple.

Aucune fonction de rappel n'a été définie pour la fonction ob_start () ici et la taille du tampon a été définie sur 0. La fonction ob_clean () supprimera le contenu du tampon. Donc la première sortie ne sera pas imprimée dans le navigateur.

// Déclarer la fonction avec PHP_Output_Handler_Cleanable
ob_start (null, 0, php_output_handler_cleanable);
Echo "L'indice Linux
"
// Nettoyez le tampon
ob_clean ();
// Déclarer la fonction avec PHP_Output_Handler_Flushable
ob_start (null, 0, php_output_handler_flushable);
Echo "Bienvenue à Linuxhint";
?>

Sortir:

La sortie suivante sera apparue après avoir exécuté le script ci-dessus. Selon la sortie, la deuxième sortie du tampon a été imprimée.

Exemple-4: utilisation de la fonction ob_start () avec ob_get_contents ()

Créez un fichier PHP avec le script suivant pour connaître l'utilisation de la fonction ob_start () avec une fonction de rappel et la fonction ob_get_contents (). La fonction convert_upper () a utilisé comme fonction de rappel de la fonction ob_start (). Le but de cette fonction est de convertir le contenu du tampon en majuscules. Trois valeurs de chaîne ont été envoyées au tampon et la sortie de l'OB_GET_CONTENTS () a été stockée en trois variables. Lorsque la fonction ob_end_flush () sera exécutée, le contenu modifié du tampon sera imprimé dans le navigateur. La fonction var_dump () sera idiot ce contenu de trois variables.

// définir la fonction de rappel
fonction convert_upper ($ tampon)

// Couvrette la chaîne en majuscules
retour (strtoupper ($ tampon));

// Appel sur_start () avec la fonction de rappel
ob_start ('convert_upper');
// La chaîne sera convertie en majuscules
Echo "Adnan";
$ var1 = ob_get_contents ();
Echo "Sakib";
$ var2 = ob_get_contents ();
écho "Mosfizur";
$ var3 = ob_get_contents ();
// imprime la chaîne convertie
ob_end_flush ();
écho "
"
// imprime les valeurs de vidage de la variable
var_dump ($ var1, $ var2, $ var3);
?>

Sortir:

La sortie suivante sera apparue après avoir exécuté le script ci-dessus. Selon la sortie, trois valeurs de chaîne se sont converties en lettres majuscules et le contenu des trois variables ne s'est pas converti en lettre majusculée.

Conclusion

La fonction ob_start () est utilisée dans le script lorsqu'elle doit stocker les données dans le tampon à des fins particulières avant d'imprimer dans la sortie. L'utilisation de la fonction ob_start () avec d'autres fonctions connexes a été expliquée dans ce tutoriel avec plusieurs exemples pour aider les utilisateurs de PHP à connaître l'utilisation de cette fonction.