php 數(shù)組添加與刪除元素程序代碼
來源:程序員人生 發(fā)布時間:2013-10-10 16:09:07 閱讀次數(shù):2656次
在php中刪除數(shù)組元素與增加數(shù)組元素的方法有很多種,下面小編來給各位同學(xué)總結(jié)一些實(shí)用的與常用的數(shù)組元素增加刪除實(shí)例。
增加數(shù)據(jù)元素有函數(shù),array_push(),array_unshift()函數(shù)
一、在數(shù)組的末尾添加元素
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() 來給數(shù)組增加一個單元,還不如用 $array[] =,因?yàn)檫@樣沒有調(diào)用函數(shù)的額外負(fù)擔(dān)。
二、在數(shù)組開頭插入元素
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
- )
刪除數(shù)組元素unset,或直接設(shè)置空,如果要在某個數(shù)組中刪除一個元素,可以直接用的unset,但今天看到的東西卻讓我大吃一驚,代碼如下:
- <?php
- $arr = array('a','b','c','d');
- unset($arr[1]);
- print_r($arr);
- ?>
- print_r($arr)
之后,結(jié)果卻不是那樣的,最終結(jié)果是 Array ( [0] => a [2] => c [3] => d ),那么怎么才能做到缺少的元素會被填補(bǔ)并且數(shù)組會被重新索引呢?答案是array_splice(),代碼如下:
- <?php
- $arr = array('a','b','c','d');
- array_splice($arr,1,1);
- print_r($arr);
- ?>
print_r($arr)之后,結(jié)果是Array ( [0] => a [1] => c [2] => d )
刪除數(shù)組指定元素
如array_slice() 函數(shù)在數(shù)組中根據(jù)條件取出一段值,并返回.
array_slice(array,offset,length,preserve)
array:數(shù)組
offset:規(guī)定取出元素的開始位置,如果是正數(shù),則從前往后開始取,如果是負(fù)值,從后向前取 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() 函數(shù)刪除數(shù)組中的第一個元素,并返回被刪除元素的值,相對的array_pop() 函數(shù)刪除數(shù)組中的最后一個元素,幾個函數(shù)用下來覺得array_search()比較實(shí)用array_search() 函數(shù)與 in_array() 一樣,在數(shù)組中查找一個鍵值,如果找到了該值,匹配元素的鍵名會被返回,如果沒找到,則返回 false,代碼如下:
- $array = array('1', '2', '3', '4', '5');
- $del_value = 3;
- unset($array[array_search($del_value , $array)]);
- print_r($array);
- 輸出
- array('1', '2', '4', '5');
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈