什么是數(shù)組?
在使用 PHP 進行開發(fā)的過程中,或早或晚,您會需要創(chuàng)建許多相似的變量,無需很多相似的變量,你可以把數(shù)據(jù)作為元素存儲在數(shù)組中,數(shù)組中的元素都有自己的 ID,因此可以方便地訪問它們。
有三種數(shù)組類型:
數(shù)值數(shù)組:帶有數(shù)字 ID 鍵的數(shù)組,數(shù)值數(shù)組存儲的每個元素都帶有一個數(shù)字 ID 鍵.
關(guān)聯(lián)數(shù)組:數(shù)組中的每個 ID 鍵關(guān)聯(lián)一個值.
多維數(shù)組:包含一個或多個數(shù)組的數(shù)組.
可以使用不同的方法來創(chuàng)建數(shù)值數(shù)組:
數(shù)值數(shù)組:
例子 1,在這個例子中,會自動分配 ID 鍵,代碼如下:
$names = array("Peter","Quagmire","Joe");
例子 2,在這個例子中,我們?nèi)斯し峙涞?ID 鍵,代碼如下:
- $names[0] = "Peter";
- $names[1] = "Quagmire";
- $names[2] = "Joe";可以在腳本中使用這些 ID 鍵:
- <?php
- $names[0] = "Peter";
- $names[1] = "Quagmire";
- $names[2] = "Joe";
- echo $names[1] . " and " . $names[2] . " are ". $names[0] . "'s neighbors";
- ?>
- //以上代碼的輸出:
- //Quagmire and Joe are Peter's neighbors
關(guān)聯(lián)數(shù)組
關(guān)聯(lián)數(shù)組,它的每個 ID 鍵都關(guān)聯(lián)一個值。
在存儲有關(guān)具體命名的值的數(shù)據(jù)時,使用數(shù)值數(shù)組不是最好的做法,通過關(guān)聯(lián)數(shù)組.我們可以把值作為鍵.并向它們賦值。
例子1,在本例中,我們使用一個數(shù)組把年齡分配給不同的人,代碼如下:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);
例子2,本例與例子 1 相同,不過展示了另一種創(chuàng)建數(shù)組的方法,代碼如下:
- $ages['Peter'] = "32";
- $ages['Quagmire'] = "30";
- $ages['Joe'] = "34";
可以在腳本中使用 ID 鍵,代碼如下:
- <?php
- $ages['Peter'] = "32";
- $ages['Quagmire'] = "30";
- $ages['Joe'] = "34";
- echo "Peter is " . $ages['Peter'] . " years old.";
- ?>
- //以上腳本的輸出:
- //Peter is 32 years old.
多維數(shù)組
在多維數(shù)組中,主數(shù)組中的每個元素也是一個數(shù)組,在子數(shù)組中的每個元素也可以是數(shù)組,以此類推。
例子1,在本例中,我們創(chuàng)建了一個帶有自動分配的 ID 鍵的多維數(shù)組,代碼如下:
- $families = array
- (
- "Griffin"=>array
- (
- "Peter",
- "Lois",
- "Megan"
- ),
- "Quagmire"=>array
- (
- "Glenn"
- ),
- "Brown"=>array
- (
- "Cleveland",
- "Loretta",
- "Junior"
- )
- );
- /*
- 如果輸出這個數(shù)組的話,應(yīng)該類似這樣:
- Array
- (
- [Griffin] => Array
- (
- [0] => Peter
- [1] => Lois
- [2] => Megan
- )
- [Quagmire] => Array
- (
- [0] => Glenn
- )
- [Brown] => Array
- (
- [0] => Cleveland
- [1] => Loretta
- [2] => Junior
- )
- )
- */
例子 2,讓我們試著顯示上面的數(shù)組中的一個單一的值,代碼如下:
- echo "Is " . $families['Griffin'][2] .
- " a part of the Griffin family?";
- //以上代碼的輸出:
- //Is Megan a part of the Griffin family?
新聞熱點
疑難解答