salut,
le comportement est clair :
second cas : tu passe par les trois phase normal, il correspond au trois cas de ton tableau.
premier cas : tu as affiche ues, puis deux fois default. pourquoi ?
parce que tu fait une comparaison dasn le switch (==), donc tu cherche switch, ou false dans les case.
donc 1er élément du tableau $val == $ues, c'est vrai l’évaluation vaut true.
donc, avec l'auto cast de php, une chaîne de caractère vaut true, le premier cas est validé, on affiche ues, et
on quite le switch.
les deux boules suivantes le test est évaluer à false, donc aucun des deux cas les deux premier case ne correspondent pas (une de caractère est évalué à true, donc différent de false) on tombe sur le default.
donc affiche uesdefaultdefault.
Si tu inverse les deux case tu aura afficher iesdefaultdefault.
Donc effectivement il n'y a pas d'erreur, puisse que php évalue la condition avant d'effectuer le switch. Ensuite le reste dépend de ce que tu veux, mais franchement qu'elle est l'intérer d'un booleen en paramètre d'un switch ? un if / else fait très bien l'affaire, c'est même fait pour cela
donc rien d'anormale, tous va bien, il faut penser à ce que l'on fait
@+