一、陣列的宣告
1、php的陣列並不要求每個變數的資料型別相同,可以是任意型別的變數的集合體。
2、陣列中的每個實體都包括兩項:鍵和值
3、使用array()來宣告乙個陣列
預設為索引陣列,索引值從0開始
4、直接為陣列元素賦值
陣列名[索引值] =元素值
//陣列的宣告
//相同型別元素
$arr1
=array(1
,3,5
,6,7
);//不相同型別元素
$arr2
=array
('a',1
,true
,null);
//沒有設定鍵,預設是索引陣列
print_r
($arr2);
//結果為 array ( [0] => a [1] => 1 [2] => 1 [3] => )
//鍵和值宣告
$arr3
=array
('a'
=>
'蘋果'
,'b'
=>
'香蕉'
,'c'
=>
'西瓜');
print_r
($arr3);
//結果為 array ( [a] => 蘋果 [b] => 香蕉 [c] => 西瓜 )
//陣列元素賦值
$arr3
['a']=
'士多啤梨'
;echo
$arr3
['a'];
//結果為 士多啤梨
二、陣列的分類
1、索引陣列(indexed array)
是使用數字作為下標,預設索引值從數字0開始,不需要特別指定
2、關聯陣列(associative array)
是使用字串作為下標
三、陣列的遍歷
使用foreach迴圈遍歷陣列
1、is_array()
判斷是否為陣列
//$key為陣列的鍵,$value為陣列的值
foreach
($arr3
as$key
=>
$value
)/*結果為
a => 士多啤梨
b => 香蕉
c => 西瓜
*/var_dump
(is_array
($arr3))
;//結果為bool(true)
使用list()、each()、while迴圈遍歷陣列
1、list()
將陣列的值分別賦值給list中的引數,list()函式可以將引數轉換成在指令碼中可以直接使用的變數
該函式僅能用於數字索引的陣列,且數字索引從0開始。
2、each()
將陣列當前乙個元素的當做引數拆分成乙個陣列傳遞給each(),並向後移動陣列指標到下乙個元素的位置。
3、list()和each()配合遍歷陣列
$arr4
=array
('a'
,'b'
,'c'
,'d');
list
($key
,$value)=
each
($arr4);
echo
$key
.' => '
.$value.'
';//結果為 0 => a,指標下移
list
($key
,$value)=
each
($arr4);
echo
$key
.' => '
.$value.'
';//結果為 0 => b
4、結合while迴圈,使用each()和list()聯合遍歷陣列
$arr5
=array
('a'
,'b'
,'c'
,'d'
,'e');
while
(list
($key
,$value)=
each
($arr5))
/*結果為
1 => b
0 => a
1 => b
2 => c
3 => d
4 => e
*/
使用for迴圈遍歷陣列
1、因為php陣列中可以存在字串下標,所以很少使用for迴圈來遍歷陣列。
2、count() 統計陣列元素個數
//使用for遍歷陣列
$arr6
=array
('a'
,'b'
,'c'
,'d'
,'e');
for($i=
0;$i<
count
($arr6);
$i++
)//結果為 a b c d e
PHP常用陣列函式介紹
在程式設計中查手冊是少不了的,所以要會學著使用已有的東西,就如php中的陣列處理函式已經有排序函式了,為什麼還要在寫東西是費著勁去寫冒泡或者堆排或者快排呢。程式設計是間接的過程,也是重用的過程,要寫出好的 是少不了設計模式來做支撐的,可能對初學者來說學習設計模式有些吃力 就像我當初看設計模式時,真是...
PHP基礎學習之陣列介紹
php中,陣列的下標可以整數,也可以是字串,陣列的元素順序不是由下標決定,而是由其 加入 的順序決定 本站收錄這篇文章php基礎學習之陣列介紹,詳細解說文章中相關php基礎學習陣列技術與知識,歡迎能給大家一些在這方面的支援和幫助!下面是詳細內容 陣列基礎 php中,陣列的下標可以整數,也可以是字串 ...
php 陣列 PHP 陣列
多維陣列 在多維陣列中,主陣列中的每個元素也是乙個陣列。在子陣列中的每個元素也可以是陣列,以此類推。例子 1 在本例中,我們建立了乙個帶有自動分配的 id 鍵的多維陣列 families array griffin array peter lois megan quagmire array glen...