今天做了个题,用到了array_map函数,下面是一些详细内容:
array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
提示:您可以向函数输入一个或者多个数组。
我对这个函数的理解就是,通过一个回调函数,把数组的每个值做了一下操作,然后返回。
这里我用array_map做了一个生成时间数组的demo。但是我觉得我的思路可能并不是最好的。
function getStr($start,$end){
$num = date_diff(date_create($start),date_create($end))->days+1;
$arr = array_fill(0,$num,$start);
$arr = array_map(function($element){
static $i=0;
$res = date("Y-m-d",strtotime("+$i days",strtotime($element)));
$i++;
return $res;
}, $arr);
print_r($arr);
}
getStr("2016-04-01","2016-04-28");