在php中刪除數組元素與增加數組元素的方法有很多種,下面小編來給各位同學總結一些實用的與常用的數組元素增加刪除實例。
增加數據元素有函數,array_push(),array_unshift()函數
一、在數組的末尾添加元素
1.array_push
使用方法
代碼如下 復制代碼<?php
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);
?>
輸出:
Array
(
[0] => orange
[1] => banana
[2] => apple
[3] => raspberry
)
2.$arr[]
使用方法
<?php
$arr = array("orange", "banana");
$arr[]='apple';
print_r($arr);
?>
這兩種的效果是一樣的
注意:如果用 array_push() 來給數組增加一個單元,還不如用 $array[] = ,因為這樣沒有調用函數的額外負擔。
二、在數組開頭插入元素
1.array_unshift
使用方法
代碼如下 復制代碼<?php
$queue = array("orange", "banana");
array_unshift($queue, "apple", "raspberry");
print_r($queue);
?>
輸出
Array
(
[0] => apple
[1] => raspberry
[2] => orange
[3] => banana
)
刪除數組元素unset,或直接設置空
如果要在某個數組中刪除一個元素,可以直接用的unset,但今天看到的東西卻讓我大吃一驚
<?php
$arr = array('a','b','c','d');
unset($arr[1]);
print_r($arr);
?>
print_r($arr)
之後,結果卻不是那樣的,最終結果是 Array ( [0] => a [2] => c [3] => d )
那麼怎麼才能做到缺少的元素會被填補並且數組會被重新索引呢?答案是array_splice():
代碼如下 復制代碼<?php
$arr = array('a','b','c','d');
array_splice($arr,1,1);
print_r($arr);
?>
print_r($arr)之後,結果是Array ( [0] => a [1] => c [2] => d )
刪除數組指定元素
如array_slice() 函數在數組中根據條件取出一段值,並返回.
array_slice(array,offset,length,preserve)
array:數組
offset: 規定取出元素的開始位置。如果是正數,則從前往後開始取,如果是負值,從後向前取 offset 絕對值。
代碼如下 復制代碼
<?php
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2));
?>
輸出
Array ( [0] => Cat [1] => Horse )
還有array_shift() 函數刪除數組中的第一個元素,並返回被刪除元素的值.
相對的array_pop() 函數刪除數組中的最後一個元素.
幾個函數用下來覺得array_search()比較實用
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');