PHP Comment séparer les éléments pairs et impairs d'un tableau sans utiliser de boucle ?
En PHP, vous obtiendrez un tableau de n éléments. Vous devez séparer les éléments du tableau selon qu'ils sont pairs ou impairs. Autrement dit, imprimez les tableaux pairs et impairs séparément sans boucler sur le tableau d'origine ni utiliser de boucles.
Exemple :
输入: array(2, 5, 6, 3, 0) 输出: 奇数array: 5 , 3 偶数array: 2, 6, 0 输入: $input = array(0, 1, 2, 3, 4, 5) 输出: 奇数array: 1, 3, 5 偶数array: 0, 2, 4
Ces types de problèmes peuvent être facilement résolus en parcourant le tableau et en imprimant les éléments individuels impairs ou pairs, mais cela prend plus de lignes de code et de surcharge de boucle se produit également. Ainsi, pour éviter d’utiliser des boucles, nous essaierons d’utiliser certaines fonctions intégrées de PHP. Ici, nous utilisons deux fonctions de tableau PHP array_filter() et array_values() pour résoudre ce problème.
array_filter() : Cette fonction sera utilisée pour filtrer les éléments impairs/pairs dans le tableau d'entrée.
array_values() : Cette fonction sera utilisée pour réindexer les tableaux pairs et impairs car les tableaux pairs et impairs array_filter ont le même index que leurs éléments dans le tableau d'entrée.
Remarque : La fonction array_filter() filtrera uniquement les éléments d'index impairs/pairs et leurs valeurs d'index. Après avoir appliqué la fonction array_filter(), les index du tableau impair seront 1,3,5 et les index du tableau pair seront 0,2,4.
Algorithme :
Filtrer les éléments :
Filtrer les éléments impairs par array_filter().
Filtrez même les éléments via array_filter().
Réindexer le tableau :
Réindexer les tableaux impairs à l'aide de array_values().
Réindexez même les tableaux en utilisant array_values().
Imprimer un tableau pair/impair.
Ce qui suit est l'implémentation PHP de l'algorithme ci-dessus :
<?php $input = array(4, 3, 6, 5, 8, 7, 2); function oddCmp($input) { return ($input & 1); } function evenCmp($input) { return !($input & 1); } $odd = array_filter($input, "oddCmp"); $even = array_filter($input, "evenCmp"); $odd = array_values(array_filter($odd)); $even = array_values(array_filter($even)); print"奇数数组:\n"; print_r($odd); print"偶数数组:\n"; print_r($even); ?>
Le résultat est le suivant :
Cet article concerne la méthode spécifique permettant de séparer les nombres impairs et pairs dans un tableau php (sans utiliser de boucles). J'espère qu'il sera utile aux amis dans le besoin !
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!