如何取消设置对象数组中所有对象的键?
How to unset a key in all objects in an array of objects?
我正在尝试取消设置对象数组中所有对象的键(基本上删除所有密码),这样做:
foreach ( $data['users'] as $user) {
unset($user['password']);
}
但它似乎不会影响 'original' 数据...我如何通过引用(或任何使它像 'expected' 一样工作的方式来做到这一点——我的意思是, 键从原始数组中的所有对象中删除)?
尝试:
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']);});
我正在尝试取消设置对象数组中所有对象的键(基本上删除所有密码),这样做:
foreach ( $data['users'] as $user) {
unset($user['password']);
}
但它似乎不会影响 'original' 数据...我如何通过引用(或任何使它像 'expected' 一样工作的方式来做到这一点——我的意思是, 键从原始数组中的所有对象中删除)?
尝试:
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']);});