Maison >développement back-end >Problème PHP >Comment déterminer si une valeur est dans un tableau en php
PHP, en tant que langage de script largement utilisé dans le développement Web, possède de fortes capacités de traitement de données, parmi lesquelles les tableaux sont l'un des types de données importants en PHP. En PHP, nous avons souvent besoin de déterminer si une valeur existe dans un tableau, donc déterminer si une valeur en PHP est dans un tableau est un problème très courant. Cet article explorera cette question en profondeur.
1. Introduction aux tableaux PHP
En PHP, un tableau est un type de données couramment utilisé avec les caractéristiques suivantes :
$cities=array("Beijing","Shanghai","Guangzhou","Shenzhen");Dans ce tableau,
$cities
est un nom de variable de tableau , array("Beijing","Shanghai","Guangzhou","Shenzhen")
est un tableau composé de quatre éléments, chaque élément correspond à un nom de ville de type chaîne, comme suit Les étiquettes sont 0, 1, 2 et 3 respectivement. $cities
是一个数组变量名,array("Beijing","Shanghai","Guangzhou","Shenzhen")
是一个由四个元素组成的数组,每个元素都对应一个字符串类型的城市名,下标分别为 0、1、2、3。
二、PHP 中判断值是否在数组中的方法
现在假设我们有一个数组 $arr
和一个值 $value
,我们需要判断此值是否在该数组中。PHP 中有多种方法可以实现此目的,包括使用 in_array()
函数、使用 array_search()
函数、使用 isset()
和 array_key_exists()
函数等等,下面分别进行介绍。
in_array()
函数判断值是否在数组中in_array()
函数用于检查一个值是否存在于一个数组中,并返回一个布尔值。如果 $value
存在于 $arr
中,则返回 True
,否则返回 False
。
in_array($value,$arr);
下面是一个示例:
$fruits=array("apple","banana","orange","kiwi"); if(in_array("banana",$fruits)){ echo "查找到了值!"; }else{ echo "未查找到值."; }
这段代码将输出 查找到了值!
。
array_search()
函数判断值是否在数组中array_search()
函数用于尝试在数组中查找一个元素,并返回它的键(即下标)。如果 $value
存在于 $arr
中,则返回该元素的键,否则返回 False
。
array_search($value,$arr);
下面是一个示例:
$fruits=array("apple","banana","orange","kiwi"); $index=array_search("banana",$fruits); echo $index;
这段代码将输出 1,因为 banana
对应 $fruits
数组中的第二个元素,它的下标是 1。
需要注意的是,如果 $value
对应多个元素,则只返回遇到的第一个元素的下标。
isset()
和 array_key_exists()
函数判断值是否在数组中isset()
函数用于检测变量是否设置,如果变量存在且值不是 NULL
,则返回 True
,否则返回 False
。
isset($arr[$key]);
array_key_exists()
函数用于检查指定的键或索引是否存在于数组中。如果 $key
存在于 $arr
中,则返回 True
,否则返回 False
。
array_key_exists($key,$arr);
下面是一个示例:
$fruits=array("apple"=>1,"banana"=>2,"orange"=>3,"kiwi"=>4); if(isset($fruits["banana"])){ echo "查找到了值!"; }else{ echo "未查找到值."; }
这段代码将输出 查找到了值!
,因为该数组中存在键值为 banana
的元素。
三、PHP中三种方法的比较
使用 in_array()
函数和 array_search()
函数是比较常见的方法,同时它们也是比较高效的方法。
in_array()
函数返回一个布尔值,不需要查询元素在数组中的位置,速度较快。而 array_search()
函数返回元素在数组中的索引,速度会稍慢一些。
使用 isset()
函数和 array_key_exists()
函数对于关联数组(即下标为字符串的数组)较为常用。这两个函数的区别在于,isset()
函数在目标值存在时返回 True
,在目标值不存在时依然返回 False
;而 array_key_exists()
函数在目标值不存在时返回 False
,仅在目标值存在时返回 True
。
四、总结
在 PHP 中判断一个值是否存在于数组中是一个常见的需求,本文介绍了 PHP 中的三种方法:使用 in_array()
函数、使用 array_search()
函数和使用 isset()
和 array_key_exists()
2. Comment déterminer si une valeur est dans un tableau en PHP
$arr
et une valeur $value
, nous devons déterminer si cette valeur est dans le tableau. Il existe plusieurs façons de procéder en PHP, notamment en utilisant la fonction in_array()
, en utilisant la fonction array_search()
, en utilisant isset()
et les fonctions array_key_exists()
, etc. sont présentées ci-dessous. #🎜🎜##🎜🎜##🎜🎜#Utilisez la fonction in_array()
pour déterminer si la valeur est dans le tableau#🎜🎜##🎜🎜##🎜🎜#in_array () code> La fonction est utilisée pour vérifier si une valeur existe dans un tableau et renvoie une valeur booléenne. Renvoie <code>True
si $value
existe dans $arr
, sinon renvoie False
. #🎜🎜#rrreee#🎜🎜#Voici un exemple : #🎜🎜#rrreee#🎜🎜#Ce code affichera Valeur trouvée !
. #🎜🎜#array_search()
pour déterminer si la valeur est dans le tableau#🎜🎜##🎜🎜##🎜🎜# array_search La fonction ()
tente de trouver un élément dans un tableau et renvoie sa clé (c'est-à-dire son indice). Si $value
existe dans $arr
, renvoie la clé de l'élément, sinon renvoie False
. #🎜🎜#rrreee#🎜🎜#Voici un exemple : #🎜🎜#rrreee#🎜🎜#Ce code affichera 1 car banane
correspond au tableau $fruits
Le deuxième élément de , son indice est 1. #🎜🎜##🎜🎜#Il est à noter que si $value
correspond à plusieurs éléments, seul l'indice du premier élément rencontré sera renvoyé. #🎜🎜#isset()
et array_key_exists()
pour déterminer si la valeur est dans le tableau# 🎜🎜## 🎜🎜##🎜🎜#La fonction isset()
est utilisée pour détecter si la variable est définie si la variable existe et que la valeur n'est pas NULL
, il renvoie True
, sinon renvoie False
. #🎜🎜#rrreee#🎜🎜#array_key_exists()
La fonction est utilisée pour vérifier si la clé ou l'index spécifié existe dans le tableau. Renvoie True
si $key
existe dans $arr
, sinon renvoie False
. #🎜🎜#rrreee#🎜🎜#Ce qui suit est un exemple : #🎜🎜#rrreee#🎜🎜#Ce code affichera Valeur trouvée !
, car la valeur clé dans le tableau est élément banane
. #🎜🎜##🎜🎜#3. Comparaison de trois méthodes en PHP #🎜🎜##🎜🎜#Utilisez la fonction in_array()
et la fonction array_search()
Ce sont les méthodes les plus courantes, et ce sont aussi les méthodes les plus efficaces. #🎜🎜##🎜🎜#in_array()
La fonction renvoie une valeur booléenne. Il n'est pas nécessaire d'interroger la position de l'élément dans le tableau, et c'est plus rapide. La fonction array_search()
renvoie l'index de l'élément dans le tableau, ce qui est légèrement plus lent. #🎜🎜##🎜🎜#L'utilisation de la fonction isset()
et de la fonction array_key_exists()
est plus couramment utilisée pour les tableaux associatifs (c'est-à-dire les tableaux dont les indices sont des chaînes ). La différence entre ces deux fonctions est que la fonction isset()
renvoie True
lorsque la valeur cible existe, et renvoie toujours False
lorsque la valeur cible n'existe pas ; La fonction array_key_exists()
renvoie False
lorsque la valeur cible n'existe pas, et renvoie True
uniquement lorsque la valeur cible existe. . #🎜🎜##🎜🎜# 4. Résumé #🎜🎜##🎜🎜# Déterminer si une valeur existe dans un tableau est une exigence courante en PHP Cet article présente trois méthodes en PHP : utiliser in_array()<.>, en utilisant la fonction <code>array_search()
et en utilisant les fonctions isset()
et array_key_exists()
. Ces méthodes sont relativement simples à mettre en œuvre et peuvent être sélectionnées et utilisées en fonction des besoins. Parallèlement, d'autres méthodes ou algorithmes peuvent également être sélectionnés en fonction de la situation réelle. Quoi qu’il en soit, la clé réside dans un compromis entre l’exactitude et l’efficacité. #🎜🎜#
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!