PHP:从数组中移除对象
可以使用 unset 函数从 PHP 中特定索引位置移除数组对象 −
示例
$index = 2; $objectarray = array( 0 => array('label' => 'abc', 'value' => 'n23'), 1 => array('label' => 'def', 'value' => '2n13'), 2 => array('label' => 'abcdef', 'value' => 'n214'), 3 => array('label' => 'defabc', 'value' => '03n2') ); var_dump($objectarray); foreach ($objectarray as $key => $object) { if ($key == $index) { unset($objectarray[$index]); } } var_dump($objectarray);
输出
这将产生以下输出 −
array(4) { [0]=> array(2) { ["label"]=> string(3) "abc" ["value"]=> string(3) "n23" } [1]=> array(2) { ["label"]=> string(3) "def" ["value"]=> string(4) "2n13" } [2]=> array(2) { ["label"]=> string(6) "abcdef" ["value"]=> string(5) "n214" } [3]=> array(2) { ["label"]=> string(6) "defabc" ["value"]=> string(5) "03n2" } } array(3) { [0]=> array(2) { ["label"]=> string(3) "abc" ["value"]=> string(3) "n23" } [1]=> array(2) { ["label"]=> string(3) "def" ["value"]=> string(4) "2n13" } [3]=> array(2) { ["label"]=> string(6) "defabc" ["value"]=> string(5) "03n2" } }
声明一个包含 4 个对象的数组并将其分配给变量“objectarray”。在此,我们希望移除索引 2 的对象,此索引也已声明,变量名为“index”。使用 foreach 循环遍历整个数组,当遍历中索引值与需要从中移除值的索引相匹配时,对该元素调用“unset”函数,并将剩余元素作为输出返回。
广告