数组是PHP程序设计中十分重要的一环。本文介绍PHP中数组函数array_map()的用法,实现将回调函数作用到给定数组单元上。具体如下:
1
|
array array_map ( callable $callback , array $arr1 [, array $... ] )
|
array_map() 返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的单元。
callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
示例程序如下:
1
2
3
4
5
6
7
8
|
function fun( $n )
{
return $n * $n * $n ;
}
$a = array (1, 2, 3, 4, 5);
$b = array_map ( 'fun' , $a ); /* 每个数组单元作三次方运算,返回数组 */
print_r( $b );
|
输出结果为:
1
2
3
4
5
6
7
8
|
Array
(
[0] => 1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)
|
此外,array_map()函数还有如下几种用法:
1
2
3
4
5
|
array_map ( 'unlink' , glob ( '*.txt' )); /* glob返回"文件名.txt"组成的数组,然后对每个文件进行删除操作*/
array_map ( 'unlink' , glob ( '*.*' ));
array_map ( 'unlink' , glob ( '*' ));
|
如果不使用array_map(),对数组每个单元进行操作就只能遍历然后适当组装。
更多的应用读者可以根据具体的项目需求进行挖掘。