PHP数组的详细解读
數組的定義
數組的本質是管理和操作一組變量,數組中可以存儲任意長度的數據,也可以存儲任意類型的數據。數組中的單元稱為元素,每個元素包括下標(鍵)和值,訪問元素的時候,是通過下標來訪問,包括一維數組,二維數組及多維數組(即數組的嵌套),PHP中分為索引數組和關聯素組。
(1) 索引數組 :使用整數作為索引,如$arr=array('PHP課程','HTML課程','CSS課程');
(2) 關聯數組 :使用字符串作為索引,如$arr=array('ID'=>1,'name'=>'PHP課程','class=>'PHP100');
PHP數組的聲明和使用
1.?直接為數組元素賦值聲明
如果索引下標不給出,就會從0開始順序索引;如果給出索引下標,下一個就會從最大的下標開始增1;如果后面出現前面的下標,則會為前面的元素重新賦值;混合聲明時,索引數組和關聯數組不互相影響。
例如:
$array[0]="I"; $array[1]="love"; $array[2]="PHP"; print_r($array);其中,print_r()是一個特殊的函數,允許你查看PHP數組變量里面的值,會按照一定鍵值和元素的順序顯示出該數組中的所有元素。這對于程序的調試很有幫助。
2.使用array()函數聲明
默認是索引數組,如果為關聯數組,需要為數組指定下標,使用“鍵=>值”,多個成員之間使用"?,?"分割。
例如:
$fruits = array('red' => 'apple', 'yellow' => 'banana', 'purple' => 'plum', 'green' => 'grape'); print_r($fruits);PHP數組的遍歷
我們經常要對數組進行遍歷,PHP中遍歷數組的方法有多種,可以使用for()循環遍歷數組,在這里,經常會用到sizeof()函數,該函數 是常用的數組函數之一,返回數組的大小,即讀取數組內元素的個數,作為循環計數器的上限值。還可以使用list()函數遍歷數組,它只能用于數字索引的數 組,且數字索引從0開始。
PHP中還可以使用專門用于對數組循環目的函數:foreach()。foreach()對傳遞給它的數組中的每一個元素執行一次,它不需要計數器或調用函數sizeof(),它可以自動跟蹤數組在數組中的位置,同時需要更少的維護。foreach()有兩種語法結構:
(1)foreach (array_expression as $value) (2)foreach (array_expression as $key => $value)第一種結構會遍歷給定的array_expression?數組,每次循環中,當前單元的值被賦給$value 并且數組內部的指針向前移一步。第二種結構中,當前單元的鍵名也會在每次循環中被賦給$key。
foreach?循環運行到結束,原數組的內部指針將指向數組的結尾。例如:
foreach ($arr as $value) {echo "Value: $value "; } foreach ($arr as $key => $value) {echo "Key: $key; Value: $value "; }PHP數組的排序
對數組元素進行排序,我們在做項目時使用也比較多,涉及的相關函數也有很多,比 如?sort(),rsort(),usort(),ksort(),uasort(),uksort()?等等,這里先介紹幾個。使用sort()和 rsort()分別對數組進行升序和降序,例如:
$arr=array(23,4,65,11,64,8); sort($arr); print_r($arr);運行結果:
Array ( [0] => 4 [1] => 8 [2] => 11 [3] => 23 [4] => 64 [5] => 65 )另外,我們可以注意到通過sort函數排序之后,數組原有的索引鍵名會被重新分配。rsort()會對數組進行逆向排序。
如果使用了關聯數組,在排序后還要保持關鍵字和值的排序一致,這就需要使用ksort()和asort()函數,例如:
$array=array('php'=>1,'jsp'=>2,'asp'=>3); ksort($array); print_r($array);運行結果:
Array ( [asp] => 3 [jsp] => 2 [php] => 1 )希望以上內容可以幫助你更好地理解和使用PHP數組。
- 本文來自:Linux學習教程網
轉載于:https://www.cnblogs.com/ah1234/p/4248049.html
總結
以上是生活随笔為你收集整理的PHP数组的详细解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 体重
- 下一篇: VC6.0 导入资源崩溃