Instance
Envoie la valeur du tableau à l'utilisateurFonction personnalisée, et renvoie une chaîne :
<?php function myfunction($v1,$v2) { return $v1 . "-" . $v2; } $a=array("Dog","Cat","Horse"); print_r(array_reduce($a,"myfunction")); ?>
Définition et utilisation
<🎜 La fonction >array_reduce() envoie les valeurs du tableau à la fonction définie par l'utilisateur et renvoie une chaîne. Remarque : Si le tableau est vide ou si une valeur initiale n'est pas transmise, cette fonction renvoie NULL. Syntaxearray_reduce(array,myfunction,initial)
参数 | 描述 |
array | 必需。规定数组。 |
myfunction | 必需。规定函数的名称。 |
initial | 可选。规定发送到函数处理的第一个值。 |
Valeur de retour : | Renvoie la valeur du résultat. |
Version PHP : | 4.0.5+ |
Journal de mise à jour : | < td width="967" valign="top" style="word-break: break-all;">Depuis PHP 5.3.0, le paramètre initial accepte plusieurs types (mixtes), et les versions antérieures à PHP 5.3.0 ne prennent en charge que les entiers .
更多实例
实例 1
带 initial 参数:
<?php function myfunction($v1,$v2) { return $v1 . "-" . $v2; } $a=array("Dog","Cat","Horse"); print_r(array_reduce($a,"myfunction",5)); ?>
实例 2
返回总和:
<?php function myfunction($v1,$v2) { return $v1+$v2; } $a=array(10,15,20); print_r(array_reduce($a,"myfunction",5)); ?>
array_reduce的强大不仅如此。看下面的例子。将数组$arr的首个元素弹出,作为初始值,避免min($result['min'], $item['min'])中$result为空。
否则最终结果min是空的。
$arr = array( array('min' => 1.5456, 'max' => 2.28548, 'volume' => 23.152), array('min' => 1.5457, 'max' => 2.28549, 'volume' => 23.152), array('min' => 1.5458, 'max' => 2.28550, 'volume' => 23.152), array('min' => 1.5459, 'max' => 2.28551, 'volume' => 23.152), array('min' => 1.5460, 'max' => 2.28552, 'volume' => 23.152), ); $initial = array_shift($arr); $t = array_reduce($arr, function($result, $item) { $result['min'] = min($result['min'], $item['min']); $result['max'] = max($result['max'], $item['max']); $result['volume'] += $item['volume']; return $result; }, $initial);
总之,这种写法比foreach更优雅,更少的定义变量。推荐使用。
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!