Syntaxe alternative des structures de contrôle
By Geoffrey on Friday 18 February 2005, 11:22 - Le saviez vous ? - Permalink
Peu de gens en connaissent l'existence, mais en PHP il existe une syntaxe alternative pour les structures de contrôle (if, while, for, etc). Au lieu d'utiliser des accolades:
if (condition) {
foo();
}
Vous pouvez utiliser une syntaxe à base de endif:
if (condition): foo(); endif;
Avantage ? On gagne en lisibilité.
Comments
On y gagne en lisibilité ? J'en doute... Perso, je préfère : if(condition){foo();} tout collé, sans espaces (s'il n'y a que foo();), mais bon, tout est une question d'habitude :p
effectivement après ça dépend de chacun :)
Très commode pour de petits développements ou on conditionne de façon claire l'affichage de code html :
<?php if ($condition): ?>
<span>Condition vérifiée</span>
<?php else: ?>
<span>Condition non vérifiée</span>
<?php endif; ?>
'lo
Dans le premier cas de figure, je tape 2 caractères (les accolades), dans le second, j'en tape 7, donc : - j'augmente le risque de faute de frappe, - je rallonge le temps passé à taper sur un clavier (et donc les risques de problèmes de poigné), - je mets plus de temps pour dev un truc (le patron n'est donc pas content).
:)
Enfin de toute façon, la lisibilité y est dès le moment ou le code est correctement indenté et présenté non?
PS : bon, étant de mauvaise foi, je ne prends en compte que l'exemple proposé et non le cas d'une succesion de if et autre elseif qui gagnerait à être remplacé par un switch dans certains cas? :]