Pour les développeurs PHP, les tableaux sont souvent nécessaires. Les tableaux sont stockés dans des paires clé-valeur lorsque la quantité de données est importante, la recherche d'un élément peut prendre du temps. PHP dispose d'une variété de fonctions intégrées pour déterminer si une valeur spécifiée existe dans un tableau. Cet article présentera certaines d'entre elles et leurs différences.
La fonction in_array()
est l'une des fonctions de tableau intégrées de PHP, qui est utilisée pour trouver une valeur spécifiée dans un tableau. Sa syntaxe est la suivante : in_array()
函数是 PHP 内置的数组函数之一,它用于在数组中查找指定的值。它的语法如下:
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
其中,
该函数将返回一个布尔值,表示值是否在数组中。如果是,则返回 true,否则返回 false。
例如,以下代码演示了如何使用 in_array()
函数来查找字符串 "apple" 是否存在于数组 $fruits 中:
$fruits = array("banana", "orange", "apple", "lemon"); if (in_array("apple", $fruits)) { echo "找到了 apple。"; } else { echo "没有找到 apple。"; }
输出结果为:
找到了 apple。
array_search()
函数也是 PHP 内置的数组函数之一,它用于在数组中查找指定的值,并返回它的键。它的语法如下:
mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] )
其中,
该函数将返回找到的值的键(使用数字键和关联键),如果没找到,则返回 false。
例如,以下代码演示了如何使用 array_search()
函数来查找字符串 "apple" 是否存在于数组 $fruits 中,并返回它的键:
$fruits = array("banana", "orange", "apple", "lemon"); $key = array_search("apple", $fruits); if ($key) { echo "找到了 apple,它的键是 " . $key . "。"; } else { echo "没有找到 apple。"; }
输出结果为:
找到了 apple,它的键是 2。
需要注意的是,如果值对应的键是 0,则 array_search()
函数会返回 0,这可能会导致程序出现问题,因此需要进行类型判断。
isset()
函数和 array_key_exists()
函数都可以用于判断数组中是否存在某个键,语法如下:
bool isset ( mixed $var [, mixed $... ] ) bool array_key_exists ( mixed $key , array $array )
其中,
两个函数都将返回一个布尔值,表示键是否存在于数组中。
需要注意的是,两个函数的差异在于,isset()
函数也可以用于判断变量是否存在,如果变量未声明,会返回 false。而 array_key_exists()
函数只能用于数组,并且不支持搜索多维数组。
例如,以下代码演示了如何使用 isset()
函数和 array_key_exists()
函数来判断键是否存在:
$fruits = array("banana" => 2, "orange" => 3, "apple" => 4, "lemon" => 1); if (isset($fruits["banana"])) { echo "存在键 banana。"; } else { echo "不存在键 banana。"; } if (array_key_exists("orange", $fruits)) { echo "存在键 orange。"; } else { echo "不存在键 orange。"; }
输出结果为:
存在键 banana。存在键 orange。
本文介绍了 PHP 数组中四个用于查找元素的函数:in_array()
、array_search()
、isset()
和 array_key_exists()
。这些函数可以根据不同的需求选择使用,其中 array_search()
函数具有一定的优势,因为它返回键,而不是布尔值。但需要注意的是,要判断值是否在数组中,最好使用 in_array()
函数,因为如果键是 0,array_search()
rrreee
in_array()
pour déterminer si la chaîne "apple" existe dans le tableau $fruits : 🎜rrreee🎜Le résultat est : 🎜rrreee🎜array_search function🎜🎜 La fonction array_search()
est également l'une des fonctions de tableau intégrées de PHP. Elle est utilisée pour trouver une valeur spécifiée dans un tableau et renvoyer sa clé. Sa syntaxe est la suivante : 🎜rrreee🎜where, 🎜array_search()
pour déterminer si la chaîne "apple" existe dans le tableau $fruits et renvoyer sa clé : 🎜rrreee🎜Le résultat est : 🎜 rrreee🎜Il est à noter que si la clé correspondant à la valeur est 0, la fonction array_search()
renverra 0, ce qui peut causer des problèmes dans le programme, donc un jugement de type est requis. Les fonctions 🎜🎜isset et array_key_exists🎜🎜La fonction isset()
et la fonction array_key_exists()
peuvent être utilisées pour déterminer si une clé existe dans le tableau. La syntaxe est la suivante : 🎜rrreee🎜 Parmi eux, 🎜isset()
peut également être utilisée pour déterminer si une variable existe. Si la variable n'est pas déclarée, elle retournera false. La fonction array_key_exists()
ne peut être utilisée que pour les tableaux et ne prend pas en charge la recherche de tableaux multidimensionnels. 🎜🎜Par exemple, le code suivant montre comment utiliser la fonction isset()
et la fonction array_key_exists()
pour déterminer si une clé existe : 🎜rrreee🎜La sortie est : 🎜rrreee🎜Résumé 🎜🎜Cet article présente quatre fonctions pour rechercher des éléments dans des tableaux PHP : in_array()
, array_search()
, isset()
et array_key_exists()
. Ces fonctions peuvent être sélectionnées et utilisées selon différents besoins, parmi lesquels la fonction array_search()
présente certains avantages car elle renvoie des clés au lieu de valeurs booléennes. Mais il faut noter que pour déterminer si la valeur est dans le tableau, il est préférable d'utiliser la fonction in_array()
, car si la clé est 0, le array_search() La fonction code> renverra 0. 🎜🎜Enfin, il convient de mentionner qu'aucune des fonctions ci-dessus n'est adaptée aux tableaux multidimensionnels. Pour les tableaux multidimensionnels, nous devons utiliser la récursivité ou d'autres algorithmes pour terminer l'opération de recherche. 🎜
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!