总是会有一些比较特别的需求,就找到了这个函数。
以下摘自 官方手册 array_map()
callback -- 回调函数,应用到每个数组里的每个元素。
array1 -- 数组,遍历运行 callback 函数。
数组列表,每个都遍历运行 callback 函数。
array_map -- 为数组的每个元素应用回调函数
array array_map ( callable $callback , array $array1 [, array $... ] )
array_map():返回数组,是为 array1 每个元素应用 callback函数之后的数组。 callback 函数形参的数量和传给 array_map() 数组数量,两者必须一样。
参数
返回值 -- 返回数组,包含 callback 函数处理之后 array1 的所有元素。
范例
<?php $arr = [ ['a' => 'aa','b' => 'bb',], ['c' => 'cc','d' => 'dd',], ['e' => 'ee','f' => 'ff',], ]; function test($v){ $v['add'] = 0; return $v; } $arr = array_map("test",$arr); print_r($arr);?>
输出结果
Array( [0] => Array ( [a] => aa [b] => bb [add] => 0 ) [1] => Array ( [c] => cc [d] => dd [add] => 0 ) [2] => Array ( [e] => ee [f] => ff [add] => 0 ))
框架(ThinkPHP)示例
<?php namespace User\Controller; use Common\Controller\ManagerController; class DataController extends Controller { public function get_data() { $arr = [ // 数据填充 ]; $arr = array_map([$this,'_add_param'],$arr); dump($arr); } private function _add_param($value){ $value['add'] = 'xxx'; return $value; } }
Atas ialah kandungan terperinci array_map()等函数在PHP框架中的运用. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!