Index: phpdoc/fr/functions/array.xml
diff -u phpdoc/fr/functions/array.xml:1.27 phpdoc/fr/functions/array.xml:1.28
--- phpdoc/fr/functions/array.xml:1.27 Mon Mar 19 09:01:14 2001
+++ phpdoc/fr/functions/array.xml Tue Mar 27 06:11:28 2001
@@ -217,11 +217,67 @@
+
+
+ array_filter
+ Filtre les éléments d'un tableau
+
+
+ Description
+
+
+ array array_filter
+ array input
+ mixed
+ callback
+
+
+
+
+ array_filter retourne un tableau
+ contenant les éléments du tableau input,
+ filtré grâce à la fonction callback.
+ Si input est un tableau associatif,
+ les clés sont préservées.
+
+
+
+ Exemple avec array_filter
+
+<?php
+function pair($var) {
+ return ($var % 2 == 1);
+}
+function impair($var) {
+ return ($var % 2 == 0);
+}
+$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
+$array2 = array(6, 7, 8, 9, 10, 11, 12);
+$tableau_pair = array_filter($array1, "pair");
+$tableau_impair = array_filter($array2, "impair");
+?>
+
+
+
+
+ Cet exemple montre comment extraire les nombres pairs
+ dans $tableau_impair : ce dernier contient
+ array ("a"=>1, "c"=>3, "e"=>5);,
+ et les nombres impairs dans $tableau_pair :
+ ce dernier contient array (6, 8, 10, 12);,
+
+
+ Voir aussi
+ array_map et
+ array_reduce.
+
+
+ array_flip
- Remplace les clés par les valeurs, et les valeurs par les clés
+ Remplace les clés par les valeurs, et les valeurs par les clés
@@ -370,10 +426,183 @@
- Voir aussi array_values.
+ Voir aussi
+ array_values.
+
+
+ array_map
+ Applique sur fonction sur des tableaux
+
+
+ Description
+
+
+ array array_map
+ mixed callback
+ array arr1
+ array
+ arr2...
+
+
+
+
+ array_map retourne un tableau
+ contenant tous les éléments du tableau arr1,
+ après leur avoir appliqué la fonction callback.
+ Le nombre de paramètre de la fonction callback
+ doit être égal au nombre de tableaux passés dans la fonction
+ array_map.
+
+
+
+ Exemple avec array_map
+
+<?php
+function cube($n) {
+ return $n*$n*$n;
+}
+$a = array(1, 2, 3, 4, 5);
+$b = array_map("cube", $a);
+?>
+
+
+
+
+ Avec cet exemple, la variable $b contiendra
+ array (1, 8, 27, 64, 125);.
+
+
+
+ array_filter - utilisation de plusieurs tableaux
+
+<?php
+function parle_espagnol($n, $m) {
+ return "Le nombre $n se dit $m en espagnol";
+}
+function map_espagnol($n, $m) {
+ return array($n => $m);
+}
+$a = array(1, 2, 3, 4, 5);
+$b = array("uno", "dos", "tres", "cuatro", "cinco");
+$c = array_map("parle_espagnol", $a, $b);
+print_r($c);
+// Affichera :
+// Array
+// (
+// [0] => Le nombre 1 se dit uno en espagnol
+// [1] => Le nombre 2 se dit dos en espagnol
+// [2] => Le nombre 3 se dit tres en espagnol
+// [3] => Le nombre 4 se dit cuatro en espagnol
+// [4] => Le nombre 5 se dit cinco en espagnol
+// )
+$d = array_map("map_espagnol", $a , $b);
+print_r($d);
+// Affichera :
+// Array
+// (
+// [0] => Array
+// (
+// [1] => uno
+// )
+//
+// [1] => Array
+// (
+// [2] => dos
+// )
+//
+// [2] => Array
+// (
+// [3] => tres
+// )
+//
+// [3] => Array
+// (
+// [4] => cuatro
+// )
+//
+// [4] => Array
+// (
+// [5] => cinco
+// )
+//
+// )
+?>
+
+
+
+
+ Généralement, lorsque vous utilisez plusieurs tableaux, ils doivent
+ être de même longueur, car la fonction de callback est appliqué à
+ un élément de chaque tableau. Si les tableaux sont de taille inégale,
+ les plus courts seront remplis d'éléments vides.
+
+
+ Une utilisation interessante de cette fonction est de construire des
+ tableaux de tableaux, grâce à la fonction de callback null.
+
+
+
+ array_map - création d'un tableau de tableaux
+
+<?php
+$a = array(1, 2, 3, 4, 5);
+$b = array("un", "deux", "trois", "quatre", "cinq");
+$c = array("uno", "dos", "tres", "cuatro", "cinco");
+$d = array_map(null, $a, $b, $c);
+print_r($d);
+// affichera :
+// Array
+// (
+// [0] => Array
+// (
+// [0] => 1
+// [1] => un
+// [2] => uno
+// )
+//
+// [1] => Array
+// (
+// [0] => 2
+// [1] => deux
+// [2] => dos
+// )
+//
+// [2] => Array
+// (
+// [0] => 3
+// [1] => trois
+// [2] => tres
+// )
+//
+// [3] => Array
+// (
+// [0] => 4
+// [1] => quatre
+// [2] => cuatro
+// )
+//
+// [4] => Array
+// (
+// [0] => 5
+// [1] => cinq
+// [2] => cinco
+// )
+//
+// )
+?gt;
+
+
+
+
+ Voir aussi
+ array_filter et
+ array_reduce.
+
+
+ array_merge
@@ -806,7 +1035,69 @@
-
+
+
+ array_reduce
+
+ Réduit itérativement un tableau
+
+
+
+ Description
+
+
+ mixed array_reduce
+ array input
+ mixed callback
+ int
+ initial
+
+
+
+
+ array_reduce applique itérativement
+ la fonction callback aux éléments du
+ tableau input, de manière à réduire le
+ tableau à une valeur simple. Si l'argument optionnel
+ intial est disponible, il sera utilisé pour
+ initialiser le processus, ou bien comme valeur finale si le
+ tableau est vide.
+
+
+
+ Exemple avec array_reduce
+
+<?php
+function rsum($v, $w) {
+ $v += $w;
+ return $v;
+}
+function rmul($v, $w) {
+ $v *= $w;
+ return $v;
+}
+$a = array(1, 2, 3, 4, 5);
+$x = array();
+$b = array_reduce($a, "rsum");
+$c = array_reduce($a, "rmul", 10);
+$d = array_reduce($x, "rsum", 1);
+?>
+
+
+
+
+ Dans cet exemple, $b contiendra 15,
+ $c contiendra 1200 (= 1*2*3*4*5*10),
+ et $d contiendra 1.
+
+
+ Voir aussi
+ array_filter et
+ array_map.
+
+
+
+ array_rand