Page 1 sur 1

Histoire d'accolades

Posté : 15 févr. 2011, 13:15
par foetus69
Bonjour,

Je voulais savoir pourquoi dans certains cas la condition if n'avait pas besoin d'accolades ? C'est arbitraire ? C'est comme on le sent ? En tout cas c'est bizarre, j'ai dans l'idée que dès qu'on teste une condition on ouvre et on ferme son accolade à défaut d'autre chose lol

Merci pour vos lumières !

Tite fée

Re: Histoire d'accolades

Posté : 15 févr. 2011, 13:35
par jojolapine
Bonjour,

Il est possible d'omettre l'accolade dans le cas où on a une seule instruction à exécuter...
par exemple:
<?php

if(!is_file($file))
    touch($file);
Par contre une bonne pratique générale consiste à mettre une accolade dans tout les cas pour ne pas arriver devant ce genre de problèmes:
<?php

if(is_file($file))
    echo 'fichier existant';
    echo file_get_contents($file);
Dans ce cas là la deuxième instruction ne fait pas partit du if et sera exécutée tout le temps.

Re: Histoire d'accolades

Posté : 15 févr. 2011, 13:36
par xTG
Si la condition ne comporte qu'une seule instruction il n'y a pas besoin d'accolades.
Si tu souhaites y placer plus d'une instruction il faut nécessairement en placer sinon seule la première sera comprise dedans.
if( condition)
 instruction correcte;
if( condition )
{
  instruction 1 correcte;
  instruction 2 correcte;
}
if( condition )
  instruction 1 correcte;
  instruction 2 non comprise dans la condition;

Re: Histoire d'accolades

Posté : 15 févr. 2011, 14:55
par foetus69
Entendu, MERCI messieurs !

J'ai toujours pris l'habitude d'en mettre avant et après quelque soit le nombre d'instructions, variables, etc...

Me voilà éclairée.

@bientôt.

:merci: