Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comparaison de chaînes

2 réponses
Avatar
Jean-Paul Passama
if ($langue == "en") {
print "anglais<br>";
}
elsif($langue == "ge") {
print "allemand<br>";
} elsif ($langue == "fr") {
print "français<br>";
}

Que $langue soit initialisé à "en", "ge" ou "fr", c'est toujours "anglais"
qui est affiché ! Pourquoi ?

Merci
JP Passama

2 réponses

Avatar
Laurent Wacrenier
Jean-Paul Passama écrit:
if ($langue == "en") {
print "anglais<br>";
}
elsif($langue == "ge") {
print "allemand<br>";
} elsif ($langue == "fr") {
print "français<br>";
}

Que $langue soit initialisé à "en", "ge" ou "fr", c'est toujours "anglais"
qui est affiché ! Pourquoi ?


Parce que numériquement $langue est "en" sont égaux (à 0).

À part cela, le code alpha-2 ISO 639-1 pour l'allemand est "de"
et c'est probablement mieux de faire ainsi :

print { en => "anglais", fr => "français", de => "allemand" }->{$langue}, "n";

Avatar
Patrick Texier
Le Wed, 2 Jul 2003 15:26:20 +0200, "Jean-Paul Passama"
a écrit :

Que $langue soit initialisé à "en", "ge" ou "fr", c'est toujours "anglais"
qui est affiché ! Pourquoi ?


Je te conseille de télécharger la documentation de Perl en français à :
http://www.enstimac.fr/Perl/

--
Patrick Texier