php4.0中共有超過30個新的陣列相關函式。其中很多通用函式允許你檢查給定陣列中是否存在特定物件、對陣列元素計數、增加或刪除元素,或對元素排序。
如果你有很大的乙個陣列,而所要完成的僅是找出乙個存在的給定值,你可以使用in_array()以返回true 或 false。如下**將輸出「not found in this array」——因為你將在$namesarray中尋找乙個並不存在的「alber 」。
$namesarray = array("joe", "jane", "bob", "mary", "paul", "eddie", "john");
$lookingfor www.cppcns.com= "albert";
if (in_array($lookingfor, $namesarray)) else
?>
如果你改變了$lookingfor的值,將其變為「mary」,你將得到訊息「you've found it!」——因為「mary」是$namesarray的一部分。
如果希望對陣列元素計數,你可以使用count()函式:
$namesarray = array("joe", "jane", "bob", "mary", "paul", "eddie", "john");
$count = count($namesarray); ?>
$count值將為7。
你可以對任何陣列新增元素,無論是在已存在陣列的開始或末尾。你也可以使用函式以建立乙個包含兩個或多個陣列元素的新陣列。合併時每個陣列將按需要的順序排列。如果你的陣列已經有內部的排序,你需要對新的合併陣列重排序。
讓我們從對已存在陣列的末尾增添元素開始,使用函式array_push():
/* 建立原始陣列 */
$fruitarray = array("apple", "orange", "banana", "kiwi", "pear");
/* 加入到原始陣列中 */
array_push($fruitarray, "grape", "pineapple", "tomato");
/* 通過其鍵值列出每個元素*/
while (list($key,$value) = each($fruitarray))
?>
這將顯示:
0 : apple
1 : orange
2 : banana
3 : kiwi
4 : pear
5 : grape
6 : pineapple
7 : tomato
當你需要對陣列開頭新增元素時,**非常類似。不同處只是函式名:array_unshift() 而不是array_push()。
/* 建立原始陣列 */
$fruitarray = array("apple", "orange", "banana", "kiwi", "pear");
/* 加入到原始陣列中 */
array_unshift($fruitarray, "grape", "pineapple", "tomat");
/* 通過其鍵值列出每個元素*/
while (list($key,$value) = each($fruitarray))
?>
這將顯示:
0 : grape
1 : pineapplewww.cppcns.com
2 : tomato
3 : apple
4 : orange
5 : banana
6 : kiwi
7 : pear
函式array_merge()合併兩個或更多的陣列。
/* 建立原始陣列 */
$fruitarray = array("apple", "orange", "banana", www.cppcns.com"kiwi", "pear");
/* 建立第二個陣列 */
$vegarray = array("carrot", "green beans", "asparagus", "artichoke", "corn");
/* 合併為乙個陣列 */
$goodfoodarray = array_merge($fruitarray, $vegarray);
/* 通過其鍵值列出每個元素*/
while (list($key,$value) = each($goodfoodarray))
?>
這將顯示:
0 : apple
1 : orange
2 : banana
3 : kiwi
4 : pear
5 : carrot
6 : green beans
7 : asparagus
8 : artichoke
9 : corn
現在已經對陣列進行了增加元素和合併,現在來練習刪除元素函式。你可以使用函式array_pop()從一陣列末尾刪除乙個元素。如果使用函式 array_shift(),則從一陣列開頭刪除乙個元素。而實際上當你從陣列刪除元素時,此元素對你而言仍然可用——當你從已存在的陣列中對元素進行 pop 或 shift時。
使用array_pop()函式從陣列末尾刪除乙個值:
/* 建立一陣列*/
$fruitarray = array("apple", "orange", "banana", "kiwi", "pear");
/* 在末尾彈出某值 */
$popped = array_pop($fruitarray);
/* 列出新陣列內容,以及彈出的值*/
while (list($key,$value) = each($fruitarray))
echo "
and finally, in $popped: $popped";
?>
這將顯示:
0 : apple
1 : orange
2 : banana
3程式設計客棧 : kiwi
and finally, in $popped: pear
next, delete an element from the end of an array: ???????????
下面,從陣列末尾刪除某值:
/* 建立一陣列*/
$fruitarray = array("apple", "orange", "banana", "kiwi", "pear");
/* 從陣列頭部移出某值 */
$shifted = array_shift($fruitarray);
/* 列出新陣列的內容以及移出的值*/
while (list($key,$value) = each($fruitarray))
echo "
and finally, in $shifted: $shifted";
?>
這將顯示:
0 : orange
1 : banana
2 : kiwi
3 : pear
and finally, in $shifted: apple
有很多函式可以幫助你對陣列元素排序。但我將會演示基本的排序以幫助你了解其過程:
/* 建立原始陣列 */
$fruitarray = array("apple", "orange", "banana", "kiwi", "pear");
/* 排序 */
sort($fruitarray);
/* 對其重設以正確從頭到尾顯示陣列 */
/* 通過其鍵值列出每個元素*/
while (list($key,$value) = each($fruitarray))
?>
這將顯示:
0 : apple
1 : banana
2 : kiwi
3 : orange
4 : pear
本文標題: 學習使用php陣列
本文位址:
php陣列使用
1,把陣列轉成字串用逗號分開 implode array 2,多個陣列比較,去除相同的元素,返回不同的元素 array diff array1,array2,例如 a array 1,2,3,4,5,6 b array 2,3 c array 4,5 則 d array diff a,b,c 值為 ...
php陣列學習
php中清空陣列的方法如下 arr array 理解為重新給變數付乙個空的陣列。unset arr 這個才是真正意義上的釋放,將資源完全釋放。篇文章對於初學者來說比較有用了,是來告訴你php 定義二維陣列與陣列定義方法哦,定義一維陣列很簡單,方法也比較多,定義二級或多維陣列也差不多,如下。array...
PHP基礎學習之陣列使用要點
一 什麼是php陣列?陣列 array 是一組有序的變數,其中每個變數都被稱為乙個元素。每個元素由乙個特殊的識別符號來區分,這個識別符號稱之為鍵 也可以稱之為下標 陣列中的每個元素都包含兩項 鍵和值。可以通過鍵值來獲取相對應的陣列元素,這些鍵值可以是數值鍵或者關聯鍵。陣列可以存入不同型別的資料,是乙...