PHP4.0數組相關函數的應用
發表時間:2024-05-14 來源:明輝站整理相關軟件相關文章人氣:
[摘要]由于PHP具有快速、可靠、跨平臺應用、源代碼開放等特點,使得PHP成為最受歡迎的服務器端Script語言之一,今天在這里我和大家談談PHP4.0中數組相關函數應用的問題。PHP 4.0 提供了超過三十個 PHP 3.0 沒有的數組相關函數以供程序設計員運用。這些函數里面常用的功能有:檢查一個數組里...
由于PHP具有快速、可靠、跨平臺應用、源代碼開放等特點,使得PHP成為最受歡迎的服務器端Script語言之一,今天在這里我和大家談談PHP4.0中數組相關函數應用的問題。PHP 4.0 提供了超過三十個 PHP 3.0 沒有的數組相關函數以供程序設計員運用。這些函數里面常用的功能有:檢查一個數組里面是否包含某個值,計算某個值在數組里面出現的次數,新增或者刪除數組元素以及將數組元素重新排序等等,下面我將在這幾方面與大家探討。
1.檢查數組中的值
如果有一個很大的數組,而你要做的只是檢查數組里面是否包含某個你感興趣的值,那么你可以使用 in_array()函數來輕松地完成這項功能。下面這個例子的程序會在頁面上顯示「在數組中找不到你要找的值」("Not found in this array") 這個字符串,因為你要找的字符串「Albert」的確不在 $namesArray 這個數組里面:
<? $namesArray = array("Heart", "Love", "Boy", "Mary", "Paul", "Merry", "Jacky");
$lookingFor = "Albert";
if (in_array($lookingFor, $namesArray)) {
echo "找到了!";
} else {
echo "在數組中找不到你要找的值!";
}
?>
如果你把變量$lookingFor的值改成「Mary」然后重新執行一次,那么這次畫面上便會顯示「找到了!」("You've found it!"),因為「Mary」這個值的確存在在$namesArray數組里面。 如果你想知道數組所包含的元素總個數,那么你可以使用簡單易用的count()函數:
<? $namesArray = array("Heart", "Love", "Boy", "Mary", "Paul", "Merry", "Jacky");
$count = count($namesArray); ?>
變量$count的值將會是7。
2.數組元素的增加
你可以很容易地在數組的頭或者尾端新增一個元素。
下面的例子中首先示范如何使用 array_push() 函數在數組的尾端新增元素:
<? /* 首先我們建立一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 使用array_push()函數在原有數組尾端新增一些元素 */
array_push($fruitArray, "grape", "pineapple", "tomato");
/* 現在把該數組的所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
顯示結果如下:
0 : apple
1 : orange
2 : banana
3 : Peach
4 : pear
5 : grape
6 : pineapple
7 : tomato
現在來示范如何從數組的開頭新增一些元素。下面的程序代碼和前面一個例子幾乎完全相同,唯一的差別只是這里使用的函數是array_unshift()而不是 array_push()。
<?
/* 首先我們建立一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 使用array_unshift()函數在原有數組開頭新增一些元素 */
array_unshift($fruitArray, "grape", "pineapple", "tomato");
/* 現在把該數組的所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
顯示結果如下:
0 : grape
1 : pineapple
2 : tomato
3 : apple
4 : orange
5 : banana
6 : Peach
7 : pear
3.數組的合并
array_merge()函數將兩個或以上的數組合并成一個新的數組,在合并數組元素的時候,合并的順序是按照原有數組被呼叫到的順序來決定。如果原有數組本身已經被重新排序過,那么在數組合并完成以后,你必須針對產生出來的新數組重新再排序一次。下面這個范例就介紹這個函數的使用方式:
<? /* 首先建立第一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 接下來建立第二個數組 */
$vegArray = array("carrot", "green beans", "asparagus", "artichoke", "corn");
/* 現在使用array_merge()函數將兩個數組合并成一個新的數組 */
$goodfoodArray = array_merge($fruitArray, $vegArray);
/* 最后我們把合并后的新數組的所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($goodfoodArray)) {
echo "$key : $value<br>";
}
?>
顯示結果如下:
0 : apple
1 : orange
2 : banana
3 : Peach
4 : pear
5 : carrot
6 : green beans
7 : asparagus
8 : artichoke
9 : corn
4.數組元素的刪除
介紹完如何新增元素以及合并數組以后,現在我來介紹如何從數組中刪除一些元素。首先,如果要從數組的尾端刪除元素,我們可以使用 array_pop() 函數。另外還有一個函數叫做 array_shift(),它是用來從數組的開頭刪除一些元素。在我們把元素從數組中刪除以后,該數組就再也找不到我們之前刪除的元素了,但是被刪除的元素還是可以透過一個變量來取得它的值。
現在我們試著使用array_pop()函數從數組的尾端刪除一些元素:
<?
/* 首先我們建立一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 使用array_pop()函數從數組的尾端刪除一個元素 */
$popped = array_pop($fruitArray);
/* 現在我們把刪除后的數組中所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
echo "<br>最后,剛才被刪除的元素的值會儲存在 \$popped 變量里面,它的值是:$popped";
?>
顯示結果如下:
0 : apple
1 : orange
2 : banana
3 : Peach
最后,剛才被刪除的元素的值會儲存在 $popped 變量里面,它的值是: pear 。
接下來示范如何從數組的開頭刪除元素:
<?
/* 首先我們建立一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 使用 array_shift()函數從數組的開頭刪除一個元素 */
$shifted = array_shift($fruitArray);
/* 現在我們把刪除后的數組中所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
echo "<br>最后,剛才被刪除的元素的值會儲存在 \$shifted 變量里面,它的值是:
$shifted";
?>
顯示結果如下:
0 : orange
1 : banana
2 : Peach
3 : pear
5.數組的排序
最后,剛才被刪除的元素的值會儲存在 $shifted 變量里面,它的值是:apple 。
PHP4.0提供了許多函數可以用來將數組的元素重新排序,但是在這里我只介紹基本的排序方式好讓你能了解數組排序的過程:
<? /* 首先我們建立一個數組 */
$fruitArray = array("apple", "orange", "banana", "Peach", "pear");
/* 使用 sort()函數將數組的元素重新排序 */
sort($fruitArray);
/* reset ($fruitArray) 以便我們能正確的將它從頭至尾的顯示*/
/* 現在我們把刪除后的數組中所有元素的鍵(key)與值(value)都顯示在網頁上 */
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
顯示結果如下:
0 : apple
1 : banana
2 : Peach
3 : orange
4 : pear