Maison  >  Article  >  développement back-end  >  Comment déterminer si un tableau contient une certaine valeur en php

Comment déterminer si un tableau contient une certaine valeur en php

PHPz
PHPzoriginal
2023-04-19 09:17:05804parcourir

Dans le développement PHP, le tableau est une structure de données très couramment utilisée. Lors de l'utilisation de tableaux, il s'agit souvent de juger si le tableau contient une certaine valeur. Cet article présentera brièvement comment déterminer rapidement si un tableau contient une certaine valeur en PHP et fournira un exemple de code pour référence.

1. Utilisez la fonction in_array() pour déterminer

En PHP, utilisez la fonction in_array() pour déterminer rapidement si un tableau contient une certaine valeur. Cette fonction reçoit deux paramètres, le premier paramètre est la valeur à trouver et le deuxième paramètre est le tableau à interroger. Si la valeur est interrogée, true est renvoyé, sinon false est renvoyé.

Exemple de code :

$arr = array('php', 'java', 'python', 'ruby');
if (in_array('php', $arr)) {
  echo '该数组中包含php';
} else {
  echo '该数组中不包含php';
}

Sortie :

该数组中包含php

2. Utilisez la fonction array_search() pour déterminer

Une autre fonction couramment utilisée est array_search(), qui est similaire à in_array() et peut déterminer rapidement si un tableau contient un certain valeur. La différence est que la fonction array_search() renvoie le nom de clé correspondant au lieu de renvoyer vrai ou faux.

Exemple de code :

$arr = array('php', 'java', 'python', 'ruby');
$key = array_search('php', $arr);
if ($key !== false) {
  echo '该数组中包含php,其键名为:' . $key;
} else {
  echo '该数组中不包含php';
}

Sortie :

该数组中包含php,其键名为:0

Il convient de noter que puisque array_search() renvoie le nom de clé correspondant, vous devez déterminer si la valeur de retour est fausse et vous ne pouvez pas utiliser if(array_search('php ' , $arr)).

3. Utilisez les fonctions in_array() et array_search() pour la correspondance floue

Parfois, une correspondance floue est nécessaire pour déterminer si un tableau contient une certaine valeur. Par exemple, vous devez déterminer si le tableau contient la chaîne « php ». Vous pouvez utiliser des expressions régulières en combinaison avec les fonctions in_array() et array_search() pour effectuer une correspondance floue.

Exemple de code :

$arr = array('welcome to php world', 'java is the best language', 'I love python', 'ruby on rails');
$pattern = '/.*php.*/i'; // 匹配包含php字样的字符串
foreach ($arr as $value) {
  if (preg_match($pattern, $value)) {
    if (in_array($value, $arr)) {
      echo $value . ' 存在于数组中';
    } else {
      $key = array_search($value, $arr);
      echo $value . ' 的键名为:' . $key . ',但其实际不在数组中';
    }
  }
}

Sortie :

welcome to php world 存在于数组中

Résumé

En PHP, déterminer si un tableau contient une certaine valeur peut être effectué à l'aide des fonctions in_array() et array_search(). La différence entre les deux fonctions réside dans le type de valeur de retour. Il convient de noter que lors de la correspondance floue, les expressions régulières doivent être utilisées en combinaison avec les fonctions in_array() et array_search() à des fins de jugement.

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