首页>文档>技术文档>PHP中array_map()函数的作用与使用方法

此组别内的文章

需要支持?

如果通过文档没办法解决您的问题,请提交工单获取我们的支持!

PHP中array_map()函数的作用与使用方法

这篇文章给大家分享的是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>"; 

    关于PHP中array_map()函数的作用及用法就介绍到这,上述示例具有一定的借鉴价值,感兴趣的朋友可以参考,希望能对大家有帮助,想要了解更多PHP函数的内容,大家可以关注其它的相关文章。

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
在线客服
主机帮
我们将24小时内回复。
2024-12-05 09:46:31
您好,有任何疑问请与我们联系!
您的工单我们已经收到,我们将会尽快跟您联系!
[QQ客服]
176363189
当幸福来敲门
[小黄]
17307799197
[企业邮箱]
sudu@yunjiasu.cc
取消

选择聊天工具: