Maison  >  Article  >  développement back-end  >  Le tableau php existe-t-il et quelle est la valeur numérique ?

Le tableau php existe-t-il et quelle est la valeur numérique ?

PHPz
PHPzoriginal
2023-05-06 09:08:06452parcourir

En programmation PHP, les tableaux sont l'une des structures de données les plus courantes. Lorsque nous avons besoin de trouver la position où une certaine valeur apparaît dans un tableau, nous pouvons rencontrer le problème suivant : Comment connaître la position de la valeur dans le tableau ? Comment déterminer si la valeur existe dans le tableau ?

Cet article abordera les problèmes ci-dessus en détail et proposera des solutions.

1. Déterminer si une certaine valeur existe dans le tableau

Nous pouvons utiliser la fonction in_array pour déterminer si une valeur existe dans le tableau. Cette fonction recherche dans le tableau une valeur donnée et renvoie une valeur booléenne (Vrai ou Faux). Si True est renvoyé, cela signifie que la valeur existe dans le tableau ; si False est renvoyé, cela signifie que la valeur n'existe pas dans le tableau.

Voici un exemple de code :

$my_array = array('apple', 'orange', 'banana');
if (in_array('apple', $my_array)) {
    echo "存在";
} else {
    echo "不存在";
}

Le code ci-dessus vérifiera si le tableau $my_array contient la chaîne "apple". S'il existe, la sortie « existe » ; si elle n'existe pas, la sortie « n'existe pas ».

2. Trouvez la position de la valeur dans le tableau

Si nous avons besoin d'obtenir la position de la valeur dans le tableau, nous pouvons utiliser la fonction array_search pour y parvenir. Cette fonction recherchera la valeur spécifiée dans le tableau et renverra le nom de clé de la valeur dans le tableau (le nom de clé est la position de la valeur). Si la valeur n'est pas trouvée, False est renvoyé.

Voici un exemple de code :

$my_array = array('apple', 'orange', 'banana');
$position = array_search('apple', $my_array);
if ($position !== False) {
    echo "该数值在数组中的位置为:" . $position;
} else {
    echo "该数值不存在于数组中";
}

Le code ci-dessus obtiendra la position de la chaîne "apple" dans le tableau $my_array. Si elle existe, affichez la position de la valeur dans le tableau ; si elle n'existe pas, affichez "la valeur n'existe pas dans le tableau".

Il est à noter que si la valeur renvoyée par la fonction $array_search est 0 (c'est-à-dire que la valeur est à la première position du tableau), elle sera jugée comme False dans la fonction. Par conséquent, nous devons utiliser des instructions telles que $position !== False pour déterminer la valeur de retour de la fonction $array_search.

3. Trouvez toutes les positions où une certaine valeur apparaît dans le tableau

Si nous devons trouver toutes les positions où une certaine valeur apparaît dans le tableau, nous pouvons utiliser une boucle while combinée avec la fonction array_search pour y parvenir. Le code spécifique est le suivant :

$my_array = array('apple', 'orange', 'banana', 'apple', 'orange', 'apple');
$search_value = 'apple';
$offset = 0;
while (($position = array_search($search_value, $my_array, $offset)) !== False) {
    echo "该数值在数组中的位置为:" . $position . "<br/>";
    $offset = $position + 1;
}

Le code ci-dessus trouvera toutes les positions de la chaîne "apple" dans le tableau $my_array et affichera ces positions dans l'ordre. Parmi elles, la variable $offset est utilisée pour définir la position de départ de la recherche. Si $offset n'est pas défini, la fonction array_search commencera la recherche à partir du premier élément du tableau.

Il convient de noter que lorsque la valeur spécifiée est introuvable, la fonction array_search renverra False, donc !== False doit être utilisé pour juger la valeur de retour.

4. Déterminer s'il y a une position numérique dans le tableau

Si nous avons besoin de connaître le classement d'une certaine valeur dans le tableau (c'est-à-dire la position de la valeur dans le tableau), nous pouvons utiliser array_flip et fonctions array_keys. Le code spécifique est le suivant :

$my_array = array('apple', 'orange', 'banana', 'apple', 'orange', 'apple');
$search_value = 'orange';
$keys = array_keys(array_flip($my_array));
$position = array_search($search_value, $keys);
if ($position !== False) {
    echo "该数值在数组中的排名为:" . ($position + 1);
} else {
    echo "该数值不存在于数组中";
}

Le code ci-dessus utilise d'abord la fonction array_flip pour échanger toutes les valeurs clés du tableau (c'est-à-dire, change les valeurs en clés et les clés en valeurs), puis utilise le array_keys fonction pour obtenir tous les noms de clés (c’est-à-dire toutes les valeurs). Ensuite, nous pouvons utiliser la fonction array_search pour trouver la position de la valeur spécifiée dans le tableau. Enfin, ajouter 1 à cette position correspond au classement de la valeur dans le tableau.

Ce qui précède est la méthode en PHP pour déterminer si une certaine valeur existe dans un tableau et la méthode pour trouver la position de la valeur dans le tableau. Il convient de noter que dans le développement réel, nous devons choisir la méthode la plus appropriée pour obtenir les meilleures performances et efficacités.

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