PHP:从数组中删除对象

phpserver side programmingprogramming更新于 2025/8/22 14:37:17

在 PHP 中,unset 函数可用于从特定索引中删除数组对象 −

示例

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


相关文章