Fonctions de tableau en PHP8 : divers exemples d'application de array_reduce()
En PHP, le tableau est un type de données très important, qui peut stocker plusieurs valeurs et peut être utilisé et traité à l'aide de diverses fonctions de tableau. Parmi elles, la fonction array_reduce() est une fonction très utile. Elle peut calculer de manière itérative tous les éléments d'un tableau en une seule valeur et renvoyer cette valeur. La syntaxe de la fonction
array_reduce() est la suivante :
mixed array_reduce ( array $array , callable $callback [, Mixed $initial = NULL ] )
Parmi eux, le paramètre $array est le tableau à être itérativement calculé et le paramètre $callback est passé. Pour la fonction de chaque élément du tableau, le paramètre $initial est une valeur initiale facultative, qui est utilisée comme valeur initiale de l'accumulateur lorsque la fonction $callback est appelée pour la première fois.
La fonction array_reduce() est très flexible à utiliser et peut être appliquée pour gérer différents types de tableaux, et différentes fonctions $callback peuvent être transmises en fonction de différents besoins. Ce qui suit présente quelques exemples d'application courants de la fonction array_reduce().
C'est l'une des applications les plus simples de la fonction array_reduce(), utilisée pour calculer la somme de tous les éléments d'un tableau. Vous pouvez utiliser la fonction d'addition intégrée comme fonction $callback, comme suit :
$numbers = array(1, 2, 3, 4, 5);
$sum = array_reduce($numbers, 'addition', 0 );
ajout de fonction ($a, $b) {
return $a + $b;
}
echo $sum; //Sortie : 15
Parfois, vous devez fusionner plusieurs tableaux en un seul tableau, Ceci peut être réalisé en utilisant la fonction array_reduce(). Vous pouvez utiliser la fonction array_merge intégrée comme fonction $callback comme suit :
$arr1 = array('a', 'b', 'c');
$arr2 = array('d', 'e'); , 'f');
$arr3 = array('g', 'h', 'i');
$arr = array_reduce(array($arr1, $arr2, $arr3), 'array_merge', array ());
print_r($arr); //Sortie : Tableau ( [0] => a [1] => b [2] => c [3] => d [4] => ; e [5 ] => f [6] => g [7] => h [8] => i )
tous les éléments d'un tableau sont également la fonction array_reduce() qui est l'une des applications courantes. Vous pouvez utiliser la fonction de multiplication intégrée comme fonction $callback, comme suit :
$numbers = array(1, 2, 3, 4, 5);
$product = array_reduce($numbers, 'multiplication', 1 );
function multiplication ($a, $b) {
return $a * $b;
}
echo $product; //Sortie : 120
La concaténation de chaînes d'éléments dans le tableau est également array_reduce Une application de la fonction (). Vous pouvez utiliser la fonction string_concatenate intégrée comme fonction $callback comme suit :
$words = array('hello', 'world', 'php');
$sentence = array_reduce($words, 'string_concatenate') ;
function string_concatenate($a, $b) {
return $a . ' ' . $b;
}
echo $sentence; //Sortie : hello world php
Parfois, vous devez compter un élément dans le tableau Le nombre d'occurrences d'un élément peut être obtenu en utilisant la fonction array_reduce(). Il convient de noter que le paramètre $initial doit être défini sur 0, comme indiqué ci-dessous :
$letters = array('a', 'b', 'c', 'a', 'c', 'a', 'd' );
$counts = array_reduce($letters, 'count_letters', array('a' => 0, 'b' => 0, 'c' => 0, 'd' => 0)) ;
function count_letters($a, $b) {
if(isset($a[$b])) { $a[$b]++; } return $a;
}
print_r($counts); //Sortie : Array ( [a] => 3 [b] => 1 [c] = > 2 [d] => 1)
Dans l'exemple ci-dessus, un tableau associatif est utilisé pour compter le nombre d'occurrences de chaque lettre, si $b existe dans $a, la valeur de. $a[$b] est ajouté 1.
Résumé
Ce qui précède ne sont que quelques exemples d'applications courantes de la fonction array_reduce(), et les applications sont flexibles et diverses. Lors de l'écriture de programmes PHP, vous pouvez choisir différentes méthodes d'application en fonction de différents besoins, profiter des divers avantages de la fonction array_reduce() et obtenir l'efficacité et la maintenabilité 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!