如何通过索引从多维数组中删除多个元素?

how to remove multiple elements by index from a multidimensional array?

我有一个像这样的多维数组

 $state=array(array('state'=>t,'capital=>'y'),array('state'=>'p','capital'=>'q'),array('state'=>,'l','capital'=>'s'),array('state'=>'g','capital=>'h'));

我需要通过从该数组中以随机顺序删除一个或多个索引来形成一个子数组,假设 $state[1],$state[3] 输出是

  $new_state=array(array('state'=>t,'capital=>'y'),array('state'=>'g','capital=>'h'));

有没有直接的函数可以实现这个?

您的第一个数组 3 元素索引,如 012。使用 unset() 通过数组索引删除数组元素,如 unset($state[1]) 或更多...现在数组索引为 02。它是未序列化的。为了检索正确的索引序列,使用了 array_values()。现在最终的数组索引是 0,1

<?php                  
$state=array(array('state'=>'t','capital'=>'y'),array('state'=>'p','capital'=>'q'),array('state'=>'g','capital'=>'h'));

unset($state[1]);
$new_array = array_values($state);;
print_r($new_array);
?>