Les instructions de conditionnelles en langage Perl sont au nombres de deux et sont très particulières :
- if() { ... } else { ... }
- unless() { ... }
if
L'instruction «if» permet le teste d'une condition et de choisir d'effectuer des instructions plutôt que d'autre dans le cas ou celle-ci serait vrai. Voici donc les syntaxes:
if(expression_vrai) { instruction_exécuté_si_vrai; } |
ou
if(expression_vrai) { instruction_exécuté_si_vrai; } else { instruction_exécuté_si_faux; } |
ou
if(expression_vrai1) { instruction_exécuté_si_vrai1; } elsif(expression_vrai2) { instruction_exécuté_si_vrai2; } ... rajouter des «elseif» autant que nécessaire ... else { instruction_exécuté_si_faux; } |
Vous y remarquerez donc après les syntaxes proposé que les instructions «else» ou «elseif» ne sont pas obligatoire. Il est également à noter qu'une condition est vrai si elle est différente de zéro et de se fait qu'il n'y a pas de symbole de d'égalité classique (==, <=, >=). Enfin, on peut seulement exécuté un bloc d'instruction contrairement à C.
Exemple
Cet exemple permet de tester une condition vrai :
on obtiendra le résultat suivant :
La condition est vraiunless
L'instruction «unless» permet le teste d'une condition et de choisir d'effectuer des instructions plutôt que d'autre dans le cas ou celle-ci serait fausse. Voici donc les syntaxes :
unless(expression_faux) { instruction_exécuté_si_faux; } |
Exemple
Cet exemple permet de tester une condition fausse :
on obtiendra le résultat suivant :
La condition est fausseswitch
Il n'existe aucune instruction d'étude de cas en Perl, pas de «switch», de «SELECT CASE» ou de «CASE». Sincèrement désolé, mais le Perl est capricieux des syntaxes d'instructions conditionnels !!!