PHP est un langage faiblement typé et convertira automatiquement les types de variables selon des scénarios spécifiques. Les tableaux que vous souhaitez rechercher sont évidemment tous des entiers, vous ne pouvez donc convertir les variables qu'en entiers. Lorsque des caractères purs sont convertis en entiers, 0 est naturellement inclus.
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
Vous devez utiliser le troisième paramètre.
PHP est un langage faiblement typé et convertira automatiquement les types de variables selon des scénarios spécifiques. Les tableaux que vous souhaitez rechercher sont évidemment tous des entiers, vous ne pouvez donc convertir les variables qu'en entiers. Lorsque des caractères purs sont convertis en entiers, 0 est naturellement inclus.
C'est parce qu'il y a un problème avec la conversion des chaînes en chiffres. var_dump('d'==0); les vrais caractères purs seront convertis en 0