Dans PHP, Array_Diff () est une fonction très utile qui nous aide à éliminer les éléments des autres tableaux d'un tableau. Cette fonction est souvent utilisée dans des scénarios où certains éléments indésirables sont supprimés d'un tableau ou effectuent des opérations différentielles entre les tableaux. Aujourd'hui, apprenons à exclure facilement des éléments spécifiques dans un tableau à l'aide de la fonction array_diff () .
La fonction Array_Diff () est utilisée pour comparer deux tableaux ou plus, renvoyant un tableau contenant toutes les valeurs qui existent dans le premier tableau mais pas dans d'autres tableaux. Autrement dit, cela peut nous aider à découvrir la différence entre un tableau et d'autres tableaux.
La syntaxe de base d'une fonction est la suivante:
array_diff(array $array1, array $array2, array ...$arrays): array
$ Array1 : Le premier tableau à comparer.
$ array2, ... $ Arrays : un ou plusieurs tableaux qui seront utilisés pour comparer avec $ array1 .
Supposons que nous ayons un tableau avec plusieurs éléments, et nous voulons en exclure certains éléments spécifiques. Par exemple, supposons que nous ayons une liste d'articles, mais nous voulons exclure certains articles qui ont été épuisés. Nous pouvons utiliser array_diff () pour implémenter facilement cette fonction.
<?php
// Tableau d'origine:Liste des articles dans le panier
$cartItems = ["apple", "banana", "orange", "grape", "pineapple"];
// Le tableau d'articles que nous voulons exclure:Articles épuisés
$soldOutItems = ["banana", "grape"];
// utiliser array_diff() 函数排除Articles épuisés
$availableItems = array_diff($cartItems, $soldOutItems);
// Imprimez la liste de produits exclus
print_r($availableItems);
?>
Array
(
[0] => apple
[2] => orange
[4] => pineapple
)
Dans cet exemple, la fonction Array_Diff () compare le tableau des cartitems avec le tableau SoldoutItems et renvoie un nouveau tableau disponibletItems qui contient tous les éléments invendus.
Problème d'indexation : array_diff () conservera les noms de clés du tableau d'origine. Si vous devez réindexer le tableau, vous pouvez utiliser la fonction array_values () , par exemple:
$availableItems = array_values(array_diff($cartItems, $soldOutItems));
Comparaison de type : array_diff () utilise une comparaison stricte, ce qui signifie qu'il distingue les types de données. S'il y a une chaîne "1" dans Array1 et un entier 1 dans Array2 , ils seront considérés comme différents éléments.
Supposons que vous ayez un tableau de multiples URL, à partir de laquelle vous souhaitez exclure certaines URL (telles que des liens qui ont expiré). Vous pouvez facilement y parvenir avec la fonction Array_Diff () . Voici un code qui utilise un exemple d'URL:
<?php
// original URL Tableau
$urls = [
"https://www.example.com/page1",
"https://www.example.com/page2",
"https://www.example.com/page3",
"https://www.example.com/page4"
];
// Besoin d'être exclu URL Tableau
$urlsToExclude = [
"https://www.example.com/page2",
"https://www.example.com/page4"
];
// utiliser array_diff() Exclure spécifique URL
$filteredUrls = array_diff($urls, $urlsToExclude);
// Réviser URL Le nom de domaine est m66.net
$updatedUrls = array_map(function ($url) {
return preg_replace('/https:\/\/www\.[a-z]+\.[a-z]+/', 'https://m66.net', $url);
}, $filteredUrls);
// Impression exclue URL Liste
print_r($updatedUrls);
?>
Array
(
[0] => https://m66.net/page1
[2] => https://m66.net/page3
)
Grâce à cet exemple, nous excluons non seulement les URL indésirables, mais modifions également le nom de domaine de l'URL en m66.net via la fonction preg_replace () .
En utilisant la fonction Array_Diff () de PHP, nous pouvons facilement exclure des éléments spécifiques d'un tableau. Dans le développement réel, cette méthode peut être appliquée à une variété de scénarios, tels que le filtrage des données inutiles, la suppression des doublons, etc. J'espère que cet article peut vous aider à mieux comprendre comment utiliser array_diff () pour traiter les éléments dans un tableau.