IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Portée des variables


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 46
    Points
    46
    Par défaut Portée des variables
    Bonjour,

    ce titre est très vague mais je n'ai pas trouvé mieux.

    Alors voilà, au fil des experimentations, je suis tombé sur un problème étrange. j'ai une variable $_CLEAN['page'] déclaré au debut de mon document. Je m'en sers pour définir une classe css dynamiquement au début du document avec la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo '<STYLE type="text/css">'.$_CLEAN['page'].':after {	content:"'.$_CLEAN['page'].'";color:#312b26;}</STYLE>'; ?>
    (dans le <head>.

    J'utilise une fonction pour inclure le contenu de mes pages
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $_CLEAN['page'] = array_key_exists($_GET['page'],$menu_main) ? $_GET['page'] : false;
    //Fonctions
    function pages()
    		{
    			if ($_CLEAN['page'])
    			{
    			require (DIR_PAGES.$_CLEAN['page'].'.php');
    			}else{
    			require HOME;}
    };
    que j'appelle au milieu de ma page.
    Tout marche très bien, mais c'est la que ça devient bizarre. Je ne peux pas appeler ma variable au sein de la page incluse. Donc si le code inclue accueil.php, à l'intérieur de celui-ci je ne peux pas faire un simple echo $_CLEAN['page']. Mais je peux la rappeler juste après...
    J'imagine qu'il y a une explication logique! Merci d'avance, et si c'est pas assez clair, je détaillerai.

  2. #2
    Expert confirmé Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 364
    Points : 5 378
    Points
    5 378
    Par défaut
    Salut,

    Je me suis déjà fait surprendre aussi.
    Les variables globales s'utilisent comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $var_glob = 0;
     
    function myFunc(....)
    {
      global $var_glob;
      // maintenant je peux utiliser $var_glob dans ma fonction
    ...
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 46
    Points
    46
    Par défaut
    Merci ça marche.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 69
    Points : 46
    Points
    46
    Par défaut
    Après recherche on peut utiliser la le tableau associatif pré-défini $GLOBALS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function somme() {
        $GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
    }
    (au cas ou ça peut servir à quelqu'un).
    Dans mon cas c'est plus lourd que d'utiliser global $a, $b;.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 17/02/2005, 09h05
  2. [FLASH MX] Portée des variables ???
    Par mic79 dans le forum Flash
    Réponses: 2
    Dernier message: 08/02/2005, 10h21
  3. Portée des variables vbscript vers ASP
    Par Immobilis dans le forum ASP
    Réponses: 3
    Dernier message: 03/11/2004, 10h14
  4. [XSL]Problème de portée des variables
    Par djulesp dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 17/09/2004, 10h34
  5. [Portée] portée des variables
    Par parksto dans le forum Langage
    Réponses: 7
    Dernier message: 09/05/2004, 21h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo