Heim  >  Artikel  >  Backend-Entwicklung  >  php数组入门教程之从数组尾删除元素

php数组入门教程之从数组尾删除元素

WBOY
WBOYOriginal
2016-07-25 08:58:01823Durchsuche
本文介绍下,php数组操作之从数组尾部删除元素的方法,有需要的朋友参考下。

在php数组函数中,array_pop()函数删除并返回数组的最后一个元素。

其形式为: mixed array_pop(aray target_array);

例子,从$states数组删除了最后的一个州:

<?php
$fruits = array("apple","banana","orange","pear");  
$fruit = array_pop($fruits);  
//$fruits = array("apple","banana","orange");  
//$fruit = "pear";
?>

下面详细介绍下,PHP删除数组中的特定元素的方法与实例。

例1,

<?php
//使用unset删除数组元素
$arr = array('apple','banana','cat','dog'); 

unset($arr[2]); 
print_r($arr); 
?> 

结果: Array ( [0] => apple [1] => banana [3] => dog )

缺点:没有重建数组索引,就是说,数组的第三个元素没了。

此时,可以用函数array_splice()。 下面是自己实现的封装函数:

<?php 
function array_remove(&$arr, $offset) 
{ 
array_splice($arr, $offset, 1); 
} 

$arr = array('apple','banana','cat','dog'); 

array_remove($arr, 2); 
print_r($arr); 
?>

2的位置这个元素被真正的删除了,并且重新建立了索引。 结果: Array ( [0] => apple [1] => banana [2] => dog )

array_splice() 函数 array_splice() 函数与 array_slice() 函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。如果提供了第四个参数,则之前选中的那些元素将被第四个参数指定的数组取代。 最后生成的数组将会返回。 语法:array_splice(array,offset,length,array) array:必需。规定数组。 offset:必需。数值。如果 offset 为正,则从输入数组中该值指定的偏移量开始移除。如果 offset 为负,则从输入数组末尾倒数该值指定的偏移量开始移除。 length:可选。数值。如果省略该参数,则移除数组中从 offset 到 结尾的所有部分。如果指定了 length 并且为正值,则移除这么多元素。如果指定了 length 且为负值,则移除从 offset 到数组末尾倒数 length 为止中间所有的元素。 array:被移除的元素由此数组中的元素替代。如果没有移除任何值,则此数组中的元素将插入到指定位置。 如果函数没有删除任何元素 (length=0),则替代数组将从 start 参数的位置插入。

例子:

<?php 
//--例1

$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"); 
$a2=array(0=>"Tiger",1=>"Lion"); 
array_splice($a1,0,2,$a2); 
print_r($a1); 

//output : Array ( [0] => Tiger [1] => Lion [2] => Horse [3] => Bird ) 

//--例2

$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"); 
$a2=array(0=>"Tiger",1=>"Lion"); 
print_r(array_splice($a1,0,2,$a2)); 
 
//output : Array ( [0] => Dog [1] => Cat ) 

//--例3
// length 参数设置为 0 
$a1=array(0=>"Dog",1=>"Cat"); 
$a2=array(0=>"Tiger",1=>"Lion"); 
array_splice($a1,1,0,$a2); 
print_r($a1); 
 
//output : Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )
?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn