PHP include fichier plusieurs fois dans une page

J'ai un fichier php appelé kal_test.php qui donne une valeur à la variable $vbl. Cette variable est nécessaire dans le fichier appelé kal_generator.php qui produit un tableau à partir de cette variable (je vous épargne les détails). Il va comme ceci:


[kal_test.php]

<?php
$vbl = "14/09/2011";
include ("kal_generator.php");
?>

[kal_test.php]

<?php
//Long code converts the $vbl into a 2-dimensional array called $output
//I'll spare you the details (it works fine by the way)
?>

<table>
  <tr><th>bla</th><th>blabla</th></tr>

<?php
foreach ($output as $v1) {
    echo "<tr>";
    foreach ($v1 as $v2) {
        echo "<td>$v2</td>";
    }
    echo "</tr>\n";
}
?>

</table>

Cette mise en place fonctionne bien, mais je ne peux pas faire deux de ceux qui apparaissent sur la même page, comme ceci:

[kal_test.php]

<?php
$vbl = "14/09/2011";
include ("kal_generator.php");
$vbl = "21/09/2011";
include ("kal_generator.php");
?>

Cela vous donnera le résultat suivant:

//here comes the header

<table> //table created with $vbl = "14/09/2011"
  <tr><th>bla</th><th>blabla</th></tr>
  <tr><td>this</td><td>works</td></tr>
  <tr><td>this</td><td>works</td></tr>
</table>

//here should the second table be and also the rest of the page (footer), this is completely missing

Ce que je fais mal?
Merci!

  • Ne pas le faire. Mettre une fonction qui comprennent et appeler la fonction à chaque fois que vous en avez besoin.
  • J'aimerais le faire mais la longueur du code est (surprise!) vraiment long
  • Qui s'en soucie.... Ce qui est si dur à propos de l'emballer avec la function mot-clé et d'un couple de parenthèses? Peut-être vous devriez envisager la rupture de cette fonction dans un certain nombre de fonctions pendant que vous y êtes.
InformationsquelleAutor gieldops | 2011-09-13