首頁 >php教程 >php手册 >php删除数组元素方法总结

php删除数组元素方法总结

WBOY
WBOY原創
2016-06-13 10:15:591156瀏覽

在php开发时我们经常会碰到要删除数组中指定指定内容,但数组是特殊变量我们不能直接利用replace进行替换的,需要一些方法来操作,下面我来给大家介绍操作办法。

如果我们知道数组元素的名字这个就好办了

按键名来删除数组中指定数组元素

 代码如下 复制代码

$barray = array('a'=>1,'b'=>2,'wod'=>3,'c'=>4,'abc'=>5);
$del ='b';
unset($barray[$del]);//结果为


Array
(
    [a] => 1
    [wod] => 3
    [c] => 4
    [abc] => 5
)


如果有多个数组要同时删除,上面办法是解决不了,我们可以利用array_diff函数来操作

 代码如下 复制代码

$a1=array("Cat","Dog","Horse",'dff','dfdf','www');
$a2=array("dff","Horse","Dog");
$a1 = array_diff($a1,$a2);
sort($a1);
print_r($a1);

Array
(
    [0] => Cat
    [1] => dfdf
    [2] => www
)

例2

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false

 代码如下 复制代码


$array = array('1', '2', '3', '4', '5');

$del_value = 3;
unset($array[array_search($del_value , $array)]);//利用unset删除这个元素

print_r($array);

输出

array('1', '2', '4', '5');

array_filter()
调用方式:array_filter($array)
参数说明:$array 是操作的对象,我们将删除其中的空元素

实例:

 代码如下 复制代码

    $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>"");
    array_filter($array);
    echo "

";<br>
    print_r($array);<br>
?>
<p>结果:</p>
<p>Array (</p>
<p>     [a] => abc</p>
<p>     [b] => bcd</p>
<p>     [c] => cde</p>
<p>    [d] => def</p>
<p>   )</p>

上面人方法删除的都会不会重建索引的,下面我来给大家介绍一个删除数组元素并重建数组索引的方法

 代码如下 复制代码

function array_remove(&$arr,$offset){ 
    array_splice($arr,$offset,1); 


$a = array('a','b','c','d'); 
array_remove($a,2); 
print_r($a);

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn