Portée des variables dans php 5+

oopin Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   -  
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   -
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 :/

3 réponses

absurdsystem Messages postés 118 Date d'inscription   Statut Membre Dernière intervention   50
 
Slt,

moi je trouve ça normal que ça affiche 1 c'est meme normal ^^
0
oopin Messages postés 25 Date d'inscription   Statut Membre Dernière intervention   1
 
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 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
Que ça soit en php4 ou 5

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

ça affichera toujours 1.
Sinon bonjour ^^
0