簡體   English   中英

如何取消設置對象數組中所有對象的鍵?

[英]How to unset a key in all objects in an array of objects?

我試圖在對象數組中的所有對象中取消設置一個鍵(基本上是刪除任何密碼),這樣做:

    foreach ( $data['users'] as $user) {
        unset($user['password']);
    }

但它似乎不會影響“原始”數據......我如何通過引用來做到這一點(或使這項工作按“預期”進行的任何事情 - 我的意思是,從所有對象中刪除密鑰原始數組)?

嘗試:

foreach ( $data['users'] as $key => $user) {
    unset($data['users'][$key]['password']);
}

或者

foreach ( $data['users'] as &$user) {
    unset($user['password']);
}

您可以像這樣傳遞$user作為參考:

// check this --------------v
foreach ( $data['users'] as &$user) {
    unset($user['password']);
}

我的建議:

array_walk($data['users'], function(&$a) {unset($a['password']);});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM