数组任意位置插入元素,删除特定元素的实例

如下所示:

$ary = array(
  array('t'=>1,'y'=>2),
  array('t'=>2,'y'=>9)
);
$t = array_splice(
  $ary, 1,0,array(array('t'=>3,'y'=>10))
);

print_r($ary);

控制台输出:

$ary = array(

  array('t'=>1,'y'=>2),

  array('t'=>3,'y'=>10),


  array('t'=>2,'y'=>9)
);

简单介绍一下array_splice方法,参数一就是被操作的数组,参数二是操作元素的索引值,参数三是长度,参数四是待替换元素。该方法的效果是删除参数一数组中以参数二为起始位置长度参数三的连贯的元素,然后用参数四补上。

假如长度为0,那么效果就相当于在指定索引值处插入指定元素了。

假如长度为1, 效果相当于去掉索引值的元素

$ary = array(
  array('t'=>1,'y'=>2),
);

删除数组中特定元素

$arr1 = array(1,3, 5,7,8);

$key = array_search(3, $arr1);

if ($key !== false){

  array_splice($arr1, $key, 1);

}

var_dump($arr1);

输出:array(1, 5,7,8);

array_slice(array,start,length,preserve)

从数组的start元素开始取出,并返回数组中的其余元素

$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2));

输出array("blue","yellow","brown")

array_push

array_push -- 将一个或多个单元压入数组的末尾(入栈)

说明

int array_push ( array &array, mixed var [, mixed ...] )

array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。