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'函数,并将其余元素作为输出返回。