Maison  >  Article  >  développement back-end  >  Comment déterminer si les valeurs du tableau sont du même type de données en PHP

Comment déterminer si les valeurs du tableau sont du même type de données en PHP

PHPz
PHPzoriginal
2023-04-26 09:13:12534parcourir

En PHP, nous devons souvent déterminer si les valeurs du tableau sont les mêmes. Mais comme PHP est un langage faiblement typé, nous devons considérer les problèmes de type de données.

Pour déterminer si les valeurs du tableau sont les mêmes, nous pouvons utiliser la fonction intégrée array_unique() pour implémenter l'opération de déduplication. La fonction

array_unique() renverra un nouveau tableau, dans lequel l'élément sera conservé à la première position d'occurrence dans le tableau d'origine, et tous les éléments suivants seront supprimés. Après la déduplication, nous pouvons déterminer si les valeurs du tableau sont les mêmes en comparant le nombre d'éléments du tableau d'origine et du nouveau tableau.

Par exemple, supposons que nous ayons un tableau comme suit :

$my_array = array("1", 1, "2", "2", 3, 3);

Nous pouvons utiliser la fonction array_unique() pour Effectuer une opération de déduplication :

$unique_array = array_unique($my_array);

Si nous utilisons la fonction count() pour calculer le nombre d'éléments de $my_array et $unique_array respectivement, alors nous pouvons comparer si les deux valeurs ​​​​sont les mêmes pour déterminer la valeur dans le tableau d'origine Sont-ils les mêmes :

if (count($my_array) === count($unique_array)) {

echo "原数组中的值是相同的";

} else {

echo "原数组中的值是不相同的";

}

Il devrait Il convient de noter qu'après avoir utilisé la fonction array_unique() pour dédupliquer le tableau, le type d'éléments dans le nouveau tableau renvoyé peut changer. Par exemple, si le tableau d'origine contient des chaînes et des nombres, après avoir supprimé les valeurs en double, les types d'éléments peuvent tous devenir des types de chaîne.

Afin de résoudre ce problème, nous pouvons utiliser l'opérateur de comparaison stricte (===) pour déterminer si les valeurs du tableau sont les mêmes, et avant la comparaison, nous devons utiliser la fonction array_map() pour convertir tous les éléments du tableau dans le même type. Par exemple, le code suivant montre comment utiliser la fonction array_map() pour convertir tous les éléments d'un tableau en types entiers :

$my_array = array("1", 1, "2", "2", 3, 3 ) ;
$unique_array = array_unique(array_map('intval', $my_array));

if (count($my_array) === count($unique_array)) {

echo "原数组中的值是相同的";

} else {

echo "原数组中的值是不相同的";

}

total En termes de PHP, pour déterminer si les valeurs d'un tableau sont du même type de données, vous devez prendre en compte les caractéristiques des langages faiblement typés. Nous pouvons utiliser la fonction array_unique() pour effectuer des opérations de déduplication et utiliser l'opérateur de comparaison stricte (===) pour déterminer si les valeurs du tableau sont les mêmes. Si le tableau contient plusieurs types de données, nous devons utiliser la fonction array_map() pour convertir tous les éléments dans le même type avant la comparaison.

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