Afficher une variable avec un echo

  • Auteur de la discussion Auteur de la discussion sff
  • Date de début Date de début
WRInaute impliqué
Bonjour,

J'ai un petit problème. Je cherche à afficher le contenu d'une variable situé dans page2.php, dedans page1.php, mais avant l'include.

Voici les 2 pages simplifié :


Page1.php
Code:
<?php 

echo $variable; // On affiche la variable de page2.php

include("page2.php");

?>


Page2.php
Code:
<?php 

$variable = "texte";

?>

Je sais que c'est faisable en mettant la variable en session, mais je voudrais éviter absolument cette méthode.
 
WRInaute accro
Il faut initialiser la variable dans page1, et l'affecter à la bonne valeur.

Tu ne peux pas appeler une variable avant qu'elle soit initialisé.
 
WRInaute occasionnel
Le mieux à faire c'est d'utiliser une variable global... ou une variable de session... $_SESSION['toto'] = "hop" ou global $variable...
 
WRInaute accro
Globalement même avec ces solutions, si l'affectation (et donc l'initalisation) est fait après le echo, ça ne marchera pas.
 
WRInaute occasionnel
Pour être vraiment précis, ça marchera, mais ça te renverra rien ;)
En php, l'initialisation de variable n'est pas obligatoire :)
 
WRInaute accro
En effet, je m'étais mal exprimé. Ca ne plantera pas, mais ça n'affichera rien. Le souci c'est que dans son exemple, il voudrait afficher la valeur que prends sa variable dans l'include avant celui-ci.
 
WRInaute accro
>> En php, l'initialisation de variable n'est pas obligatoire

hum. en php d'il y a 10 ans peut-être :)

par contre là tu fais un include, donc imagine que tu copie colle le code de page2 dans page1, pas besoin de passer donc la variable d'une page à l'autre, ta variable eiste dans les deux
 
WRInaute accro
Bein...

Code:
    <?php
    $variable = "texte";
    echo $variable; // On affiche la variable
    include("page2.php");
    ?>



Page2.php
Code:
    <?php

   //ici tu peux utiliser $variable

    ?>
 
WRInaute accro
e-kiwi a dit:
>> En php, l'initialisation de variable n'est pas obligatoire

hum. en php d'il y a 10 ans peut-être :)

Oui j'osais pas le dire. Avec un serveur configuré de manière restrictive, ca va pas être possible, ni avec les versions récentes de PHP qui sont, il me semble, configurées justement de cette façon.
 
WRInaute accro
le problème est que certains (beaucoup trop...) développeur n'affichent pas les notice, du coup tout leur semble permis...
 
WRInaute occasionnel
Vous voulez forcer quelqu'un qui veut faire un print sur une variable à l'initialiser? c'est un peu tirer par les cheveux, non?
Maintenant, si vous voulez avoir raison... Développé en php 5, je n'ai absolument aucun besoin d'initialiser une variable. Echo $plop renverra vide.
 
WRInaute accro
C'est que ton serveur doit être configuré pour ne pas afficher les notice et warning. Perso je préfère développer en les affichant, ça permet de coder plus propre, et de limiter un maximum les soucis le jour où les sites doivent déménager sur un hébergement tiers.
 
Discussions similaires
Haut