Maison >développement back-end >Problème PHP >Comment déterminer si une valeur existe dans un tableau à deux dimensions en PHP

Comment déterminer si une valeur existe dans un tableau à deux dimensions en PHP

PHPz
PHPzoriginal
2023-04-26 09:10:11819parcourir

PHP est un langage de script côté serveur populaire largement utilisé dans le développement de sites Web. À mesure que la technologie continue de se développer, nous devons souvent juger, interroger et exploiter des données pendant le processus de développement, et les opérations sur des tableaux bidimensionnels sont particulièrement fréquentes. Cet article utilisera PHP pour présenter comment déterminer si une valeur existe dans un tableau à deux dimensions.

  1. Qu'est-ce qu'un tableau bidimensionnel ?

Un tableau bidimensionnel fait référence à un tableau qui contient plusieurs tableaux, et chaque tableau contient plusieurs éléments. Par exemple :

$array = array(
  array("apple", "orange", "banana"),
  array("grape", "kiwi", "berry"),
  array("watermelon", "pineapple", "mango")
);

Dans ce tableau, nous pouvons accéder à chaque élément de la manière suivante :

echo $array[0][0]; //输出apple
echo $array[1][2]; //输出berry
echo $array[2][1]; //输出pineapple
  1. Juger si l'élément spécifié existe dans le bidimensionnel array#🎜🎜 #
En PHP, vous pouvez utiliser la fonction in_array() pour déterminer si un élément existe dans un tableau unidimensionnel. Cependant, cette fonction ne peut pas déterminer directement si un élément existe dans un tableau à deux dimensions, car dans un tableau à deux dimensions, chaque élément est un tableau. Par conséquent, nous devons utiliser une boucle pour parcourir plusieurs tableaux et déterminer si chaque élément correspond un par un.

Ce qui suit est un exemple de code qui montre comment déterminer si un élément existe dans un tableau à deux dimensions :

function in_array_recursive($item, $array){
  foreach ($array as $val){
    if (is_array($val)){
      if (in_array_recursive($item, $val)){
        return true;
      }
    }else{
      if ($val == $item){
        return true;
      }
    }
  }
  return false;
}

$array = array(
  array("apple", "orange", "banana"),
  array("grape", "kiwi", "berry"),
  array("watermelon", "pineapple", "mango")
);

if (in_array_recursive("kiwi", $array)){
  echo "数组中存在该元素";
}else{
  echo "数组中不存在该元素";
}
Dans l'exemple ci-dessus, nous définissons un élément nommé in_array_recursive () pour rechercher de manière récursive le tableau. Étant donné que plusieurs tableaux sont imbriqués couche par couche, vous devez utiliser la fonction is_array() pour déterminer si l'élément actuel est un tableau. Si l'élément courant est un tableau, la même opération est appliquée au tableau, sinon, on compare directement si l'élément est égal à l'élément cible.

    Déterminer si la paire clé-valeur spécifiée existe dans le tableau à deux dimensions
Dans le processus de développement, en plus de déterminer si le L'élément spécifié existe, nous devons également déterminer si la paire clé-valeur spécifiée existe. Pour un tableau à deux dimensions, chaque élément est un tableau de paires clé-valeur. Si nous voulons savoir si une clé existe, nous pouvons utiliser la fonction array_key_exists(). Cette fonction vérifie si la clé spécifiée existe dans un tableau et renvoie une valeur booléenne.

Ce qui suit est un exemple de code qui montre comment déterminer si une paire clé-valeur spécifiée existe dans un tableau à deux dimensions :

function key_value_exists_recursive($key, $value, $array){
  foreach ($array as $val){
    if (is_array($val)){
      if (key_value_exists_recursive($key, $value, $val)){
        return true;
      }
    }else{
      if ($val == $value && array_key_exists($key, $array)){
        return true;
      }
    }
  }
  return false;
}

$array = array(
  array("name"=>"apple", "price"=>1.5),
  array("name"=>"grape", "price"=>2.0),
  array("name"=>"mango", "price"=>3.0)
);

if (key_value_exists_recursive("name", "grape", $array)){
  echo "数组中存在该键值对";
}else{
  echo "数组中不存在该键值对";
}
Dans l'exemple ci-dessus, nous définissons une fonction nommée key_value_exists_recursive() pour rechercher récursivement le tableau. Tout d’abord, nous utilisons la fonction is_array() pour déterminer si l’élément actuel est un tableau. Si l'élément actuel est un tableau, la même opération est appliquée au tableau, sinon, nous comparerons directement si la valeur de l'élément est égale à la valeur cible, et utiliserons la fonction array_key_exists() pour déterminer si l'élément existe dans la paire clé-valeur spécifiée.

Résumé :

Dans cet article, nous présentons comment déterminer si une valeur existe dans un tableau à deux dimensions. Pour déterminer si un élément existe, nous pouvons utiliser la recherche récursive pour le trouver. Pour déterminer si une paire clé-valeur existe, nous pouvons utiliser la fonction array_key_exists() pour vérifier. Cette approche fonctionne non seulement pour PHP, mais aussi pour d'autres langages de programmation. Dans le développement réel, de telles opérations se produisent souvent et nous devons les comprendre et les maîtriser en profondeur pour améliorer l'efficacité de la programmation et la qualité du code.

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