[英]Does unsetting an array of objects unset just the array or also all the objects?
[英]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.