我正在尝试使用unset函数从php数组中删除特定元素。问题是,当我使用var_dump数组时,它会显示所有索引(不好),但是如果我尝试使用var_dump特定的索引,PHP会发出警告(很好)。
$a = [ 'unset_me', 'leave_me', 'whatever', ]; unset($a['unset_me']); var_dump($a); /** array(3) { [0]=> string(8) "unset_me" [1]=> string(8) "leave_me" [2]=> string(8) "whatever */ var_dump($a['unset_me']); // Undefined index: unset_me
问题是为什么php会像这样,以及如何正确删除索引?
另一种解决方案:
$arr = array('unset_me','leave_me','whatever',); print_r($arr); // remove the elements that you want $arr = array_diff($arr, array("unset_me")); print_r($arr);