取消设置多个数组元素的更好方法?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (11)

这里的条件是我有一个包含17个元素的数组。我希望在一定时间内获得所需的元素,并将它们永久地从数组中删除。

下面是代码:

$name = $post['name'];
$email = $post['email'];
$address = $post['address'];
$telephone = $post['telephone'];
$country = $post['country'];

unset($post['name']);
unset($post['email']);
unset($post['address']);
unset($post['telephone']);
unset($post['country']);

提问于
用户回答回答于

$remove = ['telephone', 'country'];

array_diff_key($post, array_flip($remove));

用户回答回答于

可以创建一个要删除和循环的键数组

$removeKeys = array('name', 'email');

foreach($removeKeys as $key) {
   unset($arr[$key]);
}

...或者可以将变量指向一个新数组,该数组删除了键...

$arr = array_diff_key($arr, array_flip($removeKeys));
unset($arr['name'],  $arr['email']);

扫码关注云+社区