有时候我们想要对数组里的元素进行改变,不过在函数的选择上犯了难题。本篇带来的是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>"; 
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。