本文实例讲述了php回调函数处理数组操作。分享给大家供大家参考,具体如下:
array_reduce— 用回调函数迭代地将数组简化为单一的值
callback【mixed callback ( mixed $carry , mixed $item ) carry–携带上次迭代里的值; 如果本次迭代是第一次,那么这个值是 initial。item –携带了本次迭代的值。】initial【如果指定了可选参数 initial,该参数将在处理开始前使用,或者当处理结束,数组为空时的最后一个结果。】mixed array_reduce ( array $array , callable $callback [, mixed $initial = null ] )
例:
$res = [ '0' => [ 'a' => 'you', 'b' => 'me' ], '1' => [ 'c' => 'li', 'd' => 'op' ]];$res = array_reduce($res,function($result,$value) { return array_mer潮流语录ge($result,array_values($value));},array());var_dump($res);
输出:
array(4) {
[0]=>
string(3) “you”
[1]=>
string(2) “me”
[2]=>江陵中学
string(2) “li”
[3]=>
string(2) “op”
}
array_filter — 用回调函数过滤数组中的单元
array–要循环的数组callback–使用的回调函数,如果没有提供 callback 函数, 将删除 array 中所有等值为 fal 的条目。flag–决定callback接收的参数形式:array_filter_u_key – callback接受键名作为的唯一参数array_filter_u_both – callback同时接受键名和键值array array_filter ( array $array [, callable $callback [, int $flag = 0幸福的我 ]] ) 返回过滤后的数组。
例:
function odd($var){ // returns whether the input integer is odd return($var & 1);} function even($var){ // returns whether the input integer is even return(!($var & 1));} $array1 = array("a"=>1, "b"=>2, "c"=>怀化学院图书馆;3, "d"=>4, "e"=>5);$array2 = array(6, 7, 8, 9, 10, 11, 12); echo "odd :\n";print_r(array_filter($array1, "odd"));//1,3,5echo "even:\n";print_r(array_filter($array2, "even"));//2,4,6
array_map — 为数组的每个元素应用回调函数
array_map ( callable $callback , array $array1 [, array $… ] )
参数
callback–回调函数,应用到每个数组里的每个元素。array1–数组,遍历运行 callback 函数。…
数组列表,每个都遍历运行 callback 函数。
返回值—-返回数组,包含 callback 函数处理之后 array1 的所有元素。
例:
function cube($n){ return($n * $n * $n);}$a = array(1, 2, 3, 4, 5);$b = array_map("cube", $a);print_r($b);
输出:
array
(
[0] => 1
[1] => 8
[2] => 27
[3] => 64
[4] =三级英语考试> 125
)
本文发布于:2023-04-08 14:22:01,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/a6014209ed5997b896ff094889d3ebbb.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php回调函数处理数组操作示例.doc
本文 PDF 下载地址:php回调函数处理数组操作示例.pdf
留言与评论(共有 0 条评论) |