Portée des variables dans php 5+

Fermé
oopin Messages postés 25 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 juin 2011 - 14 août 2008 à 02:03
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 - 14 août 2008 à 17:49
Bonjour,

J'ai lu quelques articles à ce sujet :
    {
      $x = 1;
      // seul x est accessible à cet endroit
      {
        // x est accessible à cet endroit,

        // y n'est pas accessible puisque la 

        // variable n'est pas encore déclarée
        $y = 2;
        // x et y sont accessibles
      }
      // y n'est pas accessible,

      // x est accessible à cet endroit
    }

et lorsque je tape :
<?php
	if ( true )
		$i = 1;

	echo $i;
?>
ça m'affiche 1, étrange.

En fait je me demandais si c'était du à une configuration de mon serveur (easyphp 2.0) ou si c'était normal :/
A voir également:

3 réponses

absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
14 août 2008 à 15:59
Slt,

moi je trouve ça normal que ça affiche 1 c'est meme normal ^^
0
oopin Messages postés 25 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 7 juin 2011 1
14 août 2008 à 17:43
Sauf que dans les bases de l'algorithme, en théorie une variable a une durée de vie limitée au bloc dans lequel elle est déclarée.
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
14 août 2008 à 17:49
Que ça soit en php4 ou 5

if (true)
{
$i = 1;
}
echo $i;

ça affichera toujours 1.
Sinon bonjour ^^
0