PHP數組可以說非常重要的知識之一,能夠在單獨的變量名中存儲一個或多個值。
什麼是數組?
在使用 PHP 進行開發的過程中,會需要創建許多相似的變量。無需很多相似的變量,你可以把數據作為元素存儲在數組中。數組中的元素都有自己的 ID,因此可以方便地訪問它們。
有三種數組類型:
數值數組
帶有數字 ID 鍵的數組
關聯數組
數組中的每個 ID 鍵關聯一個值
多維數組
包含一個或多個數組的數組
數值數組
數值數組存儲的每個元素都帶有一個數字 ID 鍵。可以使用不同的方法來創建數值數組:
例子 1
在這個例子中,會自動分配 ID 鍵:
代碼如下 復制代碼 $names = array("Peter","Quagmire","Joe");例子 2
在這個例子中,我們人工分配的 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";
?>
以上代碼的輸出:
1 Quagmire and Joe are Peter's neighbors
關聯數組
關聯數組,它的每個 ID 鍵都關聯一個值。在存儲有關具體命名的值的數據時,使用數值數組不是最好的做法。通過關聯數組,我們可以把值作為鍵,並向它們賦值。
例子 1
在本例中,我們使用一個數組把年齡分配給不同的人:
例子 2
本例與例子 1 相同,不過展示了另一種創建數組的方法:
$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.
多維數組
在多維數組中,主數組中的每個元素也是一個數組。在子數組中的每個元素也可以是數組,以此類推。
例子 1
在本例中,我們創建了一個帶有自動分配的 ID 鍵的多維數組:
$families = array
(
"Griffin"=>array
(
"Peter",
"Lois",
"Megan"
),
"Quagmire"=>array
(
"Glenn"
),
"Brown"=>array
(
"Cleveland",
"Loretta",
"Junior"
)
);
如果輸出這個數組的話,應該類似這樣:
Array
(
[Griffin] => Array
(
[0] => Peter
[1] => Lois
[2] => Megan
)
[Quagmire] => Array
(
[0] => Glenn
)
[Brown] => Array
(
[0] => Cleveland
[1] => Loretta
[2] => Junior
)
)
例子 2
讓我們試著顯示上面的數組中的一個單一的值:
echo "Is " . $families['Griffin'][2] .
" a part of the Griffin family?";
以上代碼的輸出:
Is Megan a part of the Griffin family?
PHP方面的內容,就為大家簡單的分享一下,希望大家在修改WordPress主題的時候有幫助。磊子也是邊學邊做,有很多地方自己也不是非常的了解,希望自己也有所提高。
數組元素的顯示
在如上使用的無論$people[2]也好,無論$peoples['cs']也好,都只是輸出已知的明確位置的數組元素值,如何快速輸出所有或部分的數組元素,使用循環語句無疑是最快的方法。
代碼如下 復制代碼
<?php
$people=array('name','sex','nation','birth');
for ($i=0;$i<4;$i++)
echo "$people[$i] ";
?>
除了使用了解循環次數的for循環以外,還可以使用對循環次數無須要求的foreach語句。
代碼如下 復制代碼
<?php
$people=array('name','sex','nation','birth');
foreach($people as $xiangmu)
echo $xiangmu;
?>
數組遍歷
用foreach來訪問, 遍歷的順序是固定的麼? 以什麼順序遍歷呢?
比如:
<?php
$arr['laruence'] = 'huixinchen';
$arr['yahoo'] = 2007;
$arr['baidu'] = 2008;
foreach ($arr as $key => $val) {
//結果是什麼?
}< li>
又比如:
<?php
$arr[2] = 'huixinchen';
$arr[1] = 2007;
$arr[0] = 2008;
foreach ($arr as $key => $val) {
//現在結果又是什麼?
}< li>