Maison  >  Article  >  développement back-end  >  Avertissement PHP : in_array() s'attend à ce que le paramètre 2 soit une solution de tableau

Avertissement PHP : in_array() s'attend à ce que le paramètre 2 soit une solution de tableau

WBOY
WBOYoriginal
2023-06-22 13:33:032138parcourir

En programmation PHP, nous utilisons souvent la fonction in_array() pour déterminer si un élément existe dans un tableau. Mais lors de son utilisation, nous pouvons rencontrer un tel avertissement : "Avertissement PHP : in_array() s'attend à ce que le paramètre 2 soit un tableau", ce qui signifie en fait que le deuxième paramètre passé n'est pas de type tableau. Dans l'article suivant, nous aborderons les causes de ce problème et comment le résoudre.

Cause du problème

Dans la fonction in_array(), le premier paramètre est l'élément à trouver, et le deuxième paramètre est le tableau. Cet avertissement apparaîtra si nous passons le deuxième argument à une fonction qui n'est pas de type tableau.

La raison est que le langage PHP est un langage typé dynamiquement et n'impose pas le type de variables. Par conséquent, lors de l'écriture du code, nous devons gérer les types de variables très soigneusement, sinon des problèmes potentiels se produiront.

Par exemple, supposons que nous ayons une variable $var et que nous lui attribuions un type de chaîne.

$var = "Hello World!";

Ensuite, nous essayons d'utiliser la fonction in_array() :

in_array("Hello", $var);

Puisque $var n'est pas un type tableau, nous verrons l'avertissement ci-dessus.

Solution

Pour résoudre ce problème, nous devons confirmer si le deuxième paramètre est de type tableau. Nous pouvons utiliser la fonction is_array() pour vérifier si une variable est de type tableau. Voici l'exemple de code :

$var = "Hello World!";

if(is_array($var)){

if(in_array("Hello", $var)){
    echo "Hello is found in the array.";
}else{
    echo "Hello is not found in the array.";
}

}else{

echo "The second parameter should be an array.";

}

Le code vérifie d'abord si $var est un type de tableau. Si oui, utilisez la fonction in_array() pour vérifier si l'élément est dans le tableau. Sinon, un message d'erreur s'affiche.

Dans le développement réel, nous devrions vérifier si le deuxième paramètre est de type tableau avant d'utiliser la fonction in_array(). Cela évite les avertissements inutiles et améliore la robustesse et la lisibilité du code PHP.

Résumé

Cet article introduit l'erreur "Avertissement PHP : in_array() s'attend à ce que le paramètre 2 soit un tableau". Cet avertissement apparaîtra si nous essayons de passer une variable de type non-tableau comme deuxième paramètre dans la fonction in_array(). Pour résoudre ce problème, nous devons nous assurer que le deuxième paramètre est de type tableau avant d'utiliser la fonction in_array().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn