Maison > développement back-end > Problème PHP > Comment savoir si un élément d'un tableau existe en php

Comment savoir si un élément d'un tableau existe en php

PHPz
Libérer: 2023-04-25 10:17:50
original
849 Les gens l'ont consulté

PHP est un langage de programmation flexible, capable de gérer et de manipuler des collections de données telles que des tableaux. Les tableaux sont l'un des types de données les plus couramment utilisés en PHP car ils offrent un moyen simple de stocker et d'accéder aux données. Dans cet article, nous verrons comment savoir si un élément d'un tableau existe en PHP.

Il existe plusieurs façons courantes de rechercher des éléments dans un tableau en PHP. Nous présenterons ces méthodes tour à tour ci-dessous.

Méthode 1 : Utilisez la fonction in_array()

La fonction in_array() peut être utilisée pour déterminer si une valeur est dans un tableau. La syntaxe de cette fonction est la suivante :

in_array($needle, $haystack, $strict);
Copier après la connexion

Parmi eux, $needle est l'élément. valeur que vous souhaitez rechercher ; $haystack est le tableau que vous souhaitez rechercher ; $strict (paramètre facultatif) est une valeur booléenne qui détermine s'il faut utiliser le mode strict lors de la recherche. Si la valeur est true, les types doivent également être les mêmes pour être considérés comme une correspondance.

Exemple de code :

$fruits = array('apple', 'orange', 'banana');
if(in_array('orange', $fruits)){
    echo 'orange 已经存在于数组中';
}else{
    echo 'orange 不存在于数组中';
}
Copier après la connexion

Sortie : orange existe déjà dans le tableau

Méthode 2 : utilisez la fonction array_search()

La fonction array_search() peut être utilisée pour trouver le nom de clé d'un élément dans le tableau. La syntaxe de cette fonction est la suivante :

array_search($needle, $haystack, $strict);
Copier après la connexion

Où, $needle est la valeur de l'élément que vous souhaitez rechercher ; $haystack est le tableau que vous souhaitez rechercher ; $strict (paramètre facultatif) est une valeur booléenne, utilisée pour déterminer si faire preuve de rigueur lors de la recherche de modèle. Si la valeur est true, les types doivent également être les mêmes pour être considérés comme une correspondance.

Exemple de code :

$fruits = array('apple', 'orange', 'banana');
$key = array_search('orange', $fruits);
if($key !== false){
    echo 'orange 已经存在于数组中,键名为 '.$key;
}else{
    echo 'orange 不存在于数组中';
}
Copier après la connexion

Sortie : orange existe déjà dans le tableau avec le nom de clé 1.

Il est à noter que la fonction array_search() renvoie le nom de clé de l'élément dans le tableau s'il est introuvable, elle renvoie false. Par conséquent, vous devez utiliser "!==" pour déterminer si l'élément est trouvé.

Méthode 3 : Utilisez la fonction isset()

La fonction isset() peut être utilisée pour déterminer si un élément existe dans le tableau. La syntaxe de cette fonction est la suivante :

isset($array[$key]);
Copier après la connexion

où $array est le tableau que vous souhaitez rechercher ; $key est le nom de clé ou l'index de l'élément que vous souhaitez rechercher.

Exemple de code :

$fruits = array('apple', 'orange', 'banana');
if(isset($fruits[1])){
    echo '数组中存在索引为 1 的元素';
}else{
    echo '数组中不存在索引为 1 的元素';
}
Copier après la connexion

Sortie : Il y a un élément avec l'index 1 dans le tableau.

Il convient de noter que la fonction isset() ne peut être utilisée que pour déterminer si un nom de clé ou un index existe dans le tableau, mais elle ne peut pas déterminer si la valeur de l'élément est nulle ou une chaîne vide.

Méthode 4 : Utiliser la fonction array_key_exists()

La fonction array_key_exists() peut être utilisée pour déterminer si un nom de clé existe dans le tableau. La syntaxe de cette fonction est la suivante :

array_key_exists($key, $array);
Copier après la connexion

où $key est le nom de la clé que vous souhaitez rechercher ; $array est le tableau que vous souhaitez rechercher.

Exemple de code :

$fruits = array('apple', 'orange', 'banana');
if(array_key_exists(1, $fruits)){
    echo '数组中存在索引为 1 的元素';
}else{
    echo '数组中不存在索引为 1 的元素';
}
Copier après la connexion

Sortie : Il y a un élément avec l'index 1 dans le tableau.

Il convient de noter que la fonction array_key_exists() ne peut être utilisée que pour trouver le nom de la clé dans le tableau, et ne peut pas déterminer si la valeur de l'élément correspondant au nom de la clé est vide.

Méthode 5 : Utiliser la fonction array_intersect()

La fonction array_intersect() peut être utilisée pour trouver l'intersection de deux tableaux, c'est-à-dire pour trouver les éléments qu'ils partagent. La syntaxe de cette fonction est la suivante :

array_intersect($array1, $array2);
Copier après la connexion

où $array1 et $array2 sont les deux tableaux à comparer.

Exemple de code :

$fruits1 = array('apple', 'orange', 'banana');
$fruits2 = array('orange', 'papaya', 'mango');
$common_fruits = array_intersect($fruits1, $fruits2);
if(count($common_fruits) > 0){
    echo '两个数组中存在共同元素:';
    print_r($common_fruits);
}else{
    echo '两个数组中不存在共同元素';
}
Copier après la connexion

Sortie : Il y a des éléments communs dans les deux tableaux : Array ([1] => orange)

Il est à noter que la fonction array_intersect() renvoie un nouveau tableau, qui contient deux éléments communs dans les tableaux. Si les deux tableaux n'ont aucun élément en commun, un tableau vide est renvoyé.

Pour résumer, nous avons introduit cinq façons courantes de rechercher des éléments dans un tableau en PHP : la fonction in_array(), la fonction array_search(), la fonction isset(), la fonction array_key_exists() et la fonction array_intersect(). En programmation réelle, vous devez choisir la méthode appropriée pour traiter les éléments du tableau en fonction de vos besoins.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal