Maison >développement back-end >tutoriel php >Comment capturer une sortie PHP générée dynamiquement dans une variable ?

Comment capturer une sortie PHP générée dynamiquement dans une variable ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-24 07:14:30634parcourir

How to Capture Dynamically Generated PHP Output into a Variable?

Capturer la sortie PHP dans une variable

Dans un scénario où le XML dynamique est généré à des fins multiples, y compris à la fois l'aperçu utilisateur et le passage en tant que fichier post variable, la capture du XML généré dans une variable peut rationaliser le processus. Au lieu de générer le XML deux fois, une fois pour l'aperçu et une fois pour la valeur du formulaire, cette approche permet une seule génération.

Considérez la structure de code suivante :

<code class="php">$lots of = "php";

<xml>
    <morexml>

    <?php
        while(){
    ?>
    <somegeneratedxml>
    <?php } ?>

    <lastofthexml>

    <?php ?>

<html>
    <pre class="brush:php;toolbar:false">
      The XML for the user to preview
    

Pour capturer le XML XML généré dans une variable, utilisez les fonctions ob_start() et ob_get_clean() :

<code class="php"><?php ob_start(); ?>
<xml/>
<?php $xml = ob_get_clean(); ?>
<input value="<?php echo $xml ?>" /></code>

La fonction ob_start() commence la mise en mémoire tampon de sortie, capturant toutes les sorties ultérieures, y compris le XML généré, dans un tampon interne. La fonction ob_get_clean() récupère ensuite la sortie mise en mémoire tampon et l'affecte à la variable $xml.

En capturant le XML une fois et en le stockant dans la variable $xml, vous pouvez le sortir à la fois dans l'aperçu utilisateur et dans le valeur de formulaire sans avoir besoin de génération redondante.

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