php array_map()函数实例用法
有时候我们想要对数组里的元素进行改变,不过在函数的选择上犯了难题。本篇带来的是array_map函数,对于数组中元素的值进行调整,然后再返回新的数组,处理数组的数量上也不止一个。下面我们就array_map()函数的说明、语法、参数、返回值、实例带来详解。
1、说明
array_map用回调函数处理数组中的各个元素。
在函数中你可以改变各个元素的值,重点在你需要什么样的值就返回什么样的值,保持索引。
可以一次性处理多个数组。但是数组的数量应该与回调函数的参数保持一致
2、语法
array_map(myfunction,array1,array2,array3...)
3、参数
myfunction 必需。用户自定义函数的名称,或者是 null。
array1 必需。规定数组。
array2 可选。规定数组。
array3 可选。规定数组。
4、返回值
返回包含用户自定义函数作用后的 array1 的值的数组。
5、实例
- public function test_array_map(Request $request)
- {
- $aa = array('aa', 'bb');
- $bb = array_map(function($item) {
- $item = $item . 'aa' ;
- return $item;
- }, $aa);
- var_dump($aa);
知识点扩展:
php array_map()数组函数使用说明
- /*函数array_map()函数:多数组回调函数---将回调函数作用到给定数组的单元上
- * 1、语法:array array_map ( callback callback, array arr1 [, array ...] )
- * 2、描述:返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的
- * 单元。callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
- * 3、注意事项:
- * 3.1、多数组回调函数作用于一个数组时,将保留原有数组的键名,也就是返回的数组的键名就是
- * 作用到给定数组的键名
- * 3.2、多数组回到函数作用于两个或多个数组时,他们的长度要一致,并且将忽略原来多个数组的
- * 键名,统一分配数字索引作为键名
- */
- //单个数组使用的例子
- $websites=array("g"=>"google","b"=>"baidu","y"=>"yahoo");
- //输出原数组
- echo "<pre>";
- print_r($websites);
- echo "</pre>";
- //定义对单个数组处理的回调函数
- function change_value($value){
- return ucfirst($value).".com";
- }
- $urls=array_map('change_value',$websites);
- echo "<pre>";
- print_r($urls);
- echo "</pre>";
- //多个数组使用的例子
- $arr1=array(1,3,5,7);
- $arr2=array(2,4,6,8);
- //定义对多个数组处理的回调函数
- function func1($a,$b){
- return $a*$b;
- }
- $results=array_map('func1',$arr1,$arr2);
- echo "利用回调函数对多个数组处理后,返回的结果:<br>";
- echo "<pre>";
- print_r($results);
- echo "</pre>";