array_map array_walk

$config = [
    1 => ['title'=> '推薦','code'=>1],
    2 => ['title'=> '奇聞','code'=>2],
    3 => ['title'=> '搞笑','code'=>1]
];


array_map(function($key) use ($config){
    print_r($key);
    die();
}, $config);

Array
(
  [title] => 推薦
  [code] => 1
)函數





使用map的時候,在匿名函數裏面是沒有key值的;
而walk是同時存在key val兩個值的;
因此這應該是他們最大的區別吧。
 
$config = [
1 => ['title'=> '推薦','code' => 1],
2 => ['title'=> '奇聞1','code' => 2],
3 => ['title'=> '奇聞2','code' => 2],
4 => ['title'=> '搞笑','code' => 1]
];

 
array_walk($config, function($value, $key) use (&$config){      // & 注意

if($value['code'] == 1){
$config[$key] = $value['title'];
} else {
unset($config[$key]);
}

});

var_dump($config);


array(3) {
[1]=>
string(6) "推薦"
[3]=>
array(2) {      // 這裏出現很詭異的結果
["title"]=>
string(7) "奇聞2"
["code"]=>
int(2)
}
[4]=>
string(6) "搞笑"
}spa

相關文章
相關標籤/搜索