function myfunction($v)
{
return ($v*$v);
}
$a=array(1,2,3,4,5);
/*
- 下面这种直接调用做 数组乘法是被禁止的
- 但是通过array_map 调用是不会报错的
*/
//print_r(myfunction($a));
/*
- 这么调用是不会报错的,有人知道原理是什么吗?
*/
print_r(array_map("myfunction",$a));
function myfunction($v)
{
return ($v*$v);
}
$a=array(1,2,3,4,5);
/*
*/
//print_r(myfunction($a));
/*
*/
print_r(array_map("myfunction",$a));
如果用PHP来实现array_map:
function array_map(callable $callback, array $array):array {
$result = [];
$idx = 0;
foreach($array as $row) {
$result[] = $callback($row, $idx);
$idx++;
}
return $result;
}
2 回答2.5k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答853 阅读✓ 已解决
2 回答540 阅读✓ 已解决
945 阅读
2 回答574 阅读
1 回答690 阅读
array_map