有时候我们想要对数组里的元素进行改变,不过在函数的选择上犯了难题。本篇带来的是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>";
到此这篇关于php array_map()函数实例用法的文章就介绍到这了,更多相关php array_map()函数的用法内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!