亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

array_walk 在修改值時未按預期工作

array_walk 在修改值時未按預期工作

PHP
蝴蝶不菲 2023-04-21 17:22:22
我正在嘗試向數組添加一個新值(我知道這是可能的,array_map()但我想用 來測試它array_walk())。這是代碼:$array = [    [        'id'   => 1,        'name' => 'Jesus',    ],    [        'id'   => 2,        'name' => 'David',    ],];我想要這個輸出:$array = [    [        'id'     => 1,        'name'   => 'Jesus',        'locked' => 0,    ],    [        'id'     => 2,        'name'   => 'David',        'locked' => 0,    ],];我嘗試使用以下代碼:array_walk($array, static function(array $item): array {    $item += ['locked' => 0];    //var_dump($item); // Here the array has the three values.    return $item;});// Also I tried the same code but not returning the array, I mean:array_walk($array, static function(array $item): void {    $item += ['locked' => 0];    //var_dump($item); // Here the array has the three values.});有可能我想要什么嗎array_walk()?那將是一個解決方案array_map()。$arrayMapped = array_map(static function(array $item): array {    return $item += ['locked' => 0];}, $array);var_dump($arrayMapped);干杯!
查看完整描述

1 回答

?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

數組按值傳遞。您需要使用引用來定義參數&

array_walk($array, function(array &$item): void {
    $item['locked'] = 0;
});


查看完整回答
反對 回復 2023-04-21
  • 1 回答
  • 0 關注
  • 119 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號