- array_map()函数 array_map()函数将用户自定义函数作用到数组中的每一个值上,并返回用户自定义函数作用后的带有新的值的数组;
语法:array_map(myfunction,array1,array2,array3…)- array_filter()函数array_filter()函数用回调函数过滤数组中的元素;该函数把输入数组中的每一个键值传给回调函数,如果回调函数返回ture,则把输入数组中的当前键值返回给结果数组,数组键名保持不变;
语法:array_filter(数组,函数);- array_values()函数array_values()返回包含数组中所有值的数组;
语法:array_values(数组);
实例演示:
<?php
// range()函数创建一个包含指定范围的元素的数组;
$data=range(0,100);
print_r($data);
echo "<hr/>";
$arr=array_map(function($item){
if($item%2==0){return $item;}
},$data);
print_r($arr);
echo "<hr/>";
// 删除数组中所有值为false的成员
$res=array_filter($arr,function($item){return $item;});
print_r(array_values($res));
?>
实例演示:
<?php
// 剩余参数
function text($a,$b,$c){
return $a+$b+$c;
}
echo text(1,2,3);
echo "<br/>";
// 当参数不固定时
function text1(...$arg){
// array_sum()函数返回数组中所有值的和
return array_sum($arg);
}
echo text1(66,66,66);
echo "<br/>";
// 剩余参数在函数调用表达式中展开
$arr = [1,2,3,4,5,6,7,8,9,10];
$res = text1(...$arr);
echo $res;
echo "<br/>";
// 引用参数
function num(&$ary){
return $ary *= 2;
}
$vall=60;
echo num($vall);
echo $vall;
// 输出120,把$vall的内存储存区块相对地址导入到了函数中,在函数里发生任何变化都会对父程序造成影响;
?>
输出结果: