總是會有一些比較特別的需求,就找到了這個函數。
以下摘自 官方手冊 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 ))
<?phpnamespace 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; }}