是否有 PHP 内置函数可以按键取消设置多个数组项?
这将相当于:
foreach($badElements as $k) {
unset($allElements[$k]);
}
或者,甚至更好:
$keys = array_keys($badElements);
foreach($keys as $k) {
unset($allElements[$k]);
}
是否有 PHP 内置函数可以按键取消设置多个数组项?
这将相当于:
foreach($badElements as $k) {
unset($allElements[$k]);
}
或者,甚至更好:
$keys = array_keys($badElements);
foreach($keys as $k) {
unset($allElements[$k]);
}
您可以创建一个要删除和循环的键数组,显式取消设置它们。例子:
$removeKeys = array('name', 'email');
foreach($removeKeys as $key) {
unset($badElements[$key]);
}
或者,您可以将变量指向已删除键的新数组。
$badElements = array_diff_key($badElements, array_flip($removeKeys));
或将所有数组成员传递给 unset()。
unset($badElements['name'], $badElements['email'])
以下内容不能完全满足您的要求,因为它不是 in-situ。但也许你可以复制数组:
$v = array("lol"=>"blub", "lal"=>"blab", "lulz"=>"gagh");
$k = array("lol", "lulz");
var_dump(array_diff_key($v, array_flip($k)));
[在键盘上运行它]