Maison >développement back-end >Problème PHP >Comment comparer deux tableaux en php et renvoyer différents éléments

Comment comparer deux tableaux en php et renvoyer différents éléments

青灯夜游
青灯夜游original
2022-05-12 20:44:422322parcourir

Méthode de comparaison : 1. Utilisez l'instruction "array_diff(array1, array2)" pour comparer les valeurs des clés ; 2. Utilisez l'instruction "array_diff_key(array1, array2)" pour comparer les noms de clés ; array 2)", tout en comparant les noms de clé et les valeurs de clé du tableau.

Comment comparer deux tableaux en php et renvoyer différents éléments

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3

php compare deux tableaux et renvoie des éléments différents

Si vous souhaitez comparer deux tableaux et obtenir des résultats différents éléments, il s'agit de comparer des tableaux et de prendre l'ensemble des différences.

En PHP, vous pouvez utiliser les fonctions suivantes pour obtenir l'ensemble des différences :

  • Fonction Array_diff()

  • Fonction Array_diff_key()

  • Fonction Array_diff_assoc()

1 . tableau_diff( ) fonction --Comparez les valeurs clés du tableau

array_diff($arr1,$arr2...) la fonction compare uniquement les valeurs clés du tableau et renverra un tableau de différence Les éléments dans la différence. le tableau existe dans le tableau comparé $ dans arr1, mais n'existe pas dans les autres tableaux de paramètres $arr2...

Exemple : renvoyer différents éléments du tableau

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);
$result=array_diff($arr1,$arr2);
echo "两个数组中,不同的元素为:";
var_dump($result);
?>

Comment comparer deux tableaux en php et renvoyer différents éléments

Dans l'exemple ci-dessus, un seul nom de clé dans le tableau $arr1 et le tableau $arr2 est différent. En fonction du tableau $arr1, la valeur sera obtenue. " "c"=>"bleu"". "c"=>"blue"”。

2、array_diff_key()函数--比较数组的键名

array_diff_key($arr1,$arr2...)函数只比较数组的键名,同样返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

示例:返回数组的不同元素

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);
$result=array_diff_key($arr1,$arr2);
echo "两个数组中,不同的元素为:";
var_dump($result);
?>

Comment comparer deux tableaux en php et renvoyer différents éléments

上面的示例,$arr1数组和$arr2数组中有两个键名不相同,以数组$arr1为准就会得到值“"c"=>"blue"”和“"d"=>"yellow"”。

3、array_diff_assoc()函数--比较数组的键名和键值

array_diff_assoc($arr1,$arr2...)函数会将数组的键名和键值都进行比较,同样返回一个差集数组,差集元素和array_diff()、array_diff_key()一样会从被比较的数组$arr1中获取。

示例:返回数组的不同元素

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);
$result=array_diff_assoc($arr1,$arr2);
echo "两个数组中,不同的元素为:";
var_dump($result);
?>

Comment comparer deux tableaux en php et renvoyer différents éléments

上例中,$arr1数组和$arr2数组进行比较,有三个不相同的元素,然后以数组$arr1为准会得到值“"a"=>"red"”、“"c"=>"blue"”、“"d"=>"yellow"

2. Fonction array_diff_key() - compare les noms de clés des tableaux

La fonction array_diff_key($arr1,$arr2...) compare uniquement les noms de clés des tableaux et renvoie également un tableau de différence, dans le tableau de différence L'élément existe dans le tableau comparé $arr1, mais n'existe pas dans l'autre tableau de paramètres $arr2... 🎜🎜Exemple : renvoyer différents éléments du tableau🎜rrreee🎜Comment comparer deux tableaux en php et renvoyer différents éléments🎜🎜Dans l'exemple ci-dessus, deux noms de clés dans le tableau $arr1 et le tableau $arr2 sont différents. En fonction du tableau $arr1, la valeur ""c"=> " bleu"" et ""d"=>"jaune"". 🎜🎜🎜3. Fonction array_diff_assoc() - compare le nom de clé et la valeur de clé du tableau 🎜🎜🎜La fonction array_diff_assoc($arr1,$arr2...) comparera le nom de clé et la valeur de clé du tableau, et renvoie également un tableau d'ensembles de différences, les éléments de l'ensemble de différences seront obtenus à partir du tableau comparé $arr1 comme array_diff() et array_diff_key(). 🎜🎜Exemple : renvoyer différents éléments du tableau🎜rrreee🎜Comment comparer deux tableaux en php et renvoyer différents éléments🎜🎜Dans l'exemple ci-dessus, le tableau $arr1 et le tableau $arr2 sont comparés. Il y a trois éléments différents. Ensuite, la valeur ""a"=> sera obtenue en fonction. sur le tableau $arr1. "red"", ""c"=>"blue"", ""d"=>"jaune"". 🎜🎜Apprentissage recommandé : "🎜Tutoriel vidéo PHP🎜"🎜

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