本文實例講述了PHP數(shù)組基本用法與知識點。分享給大家供大家參考,具體如下:
初識數(shù)組
索引數(shù)組: 指鍵名為整數(shù)的數(shù)組。默認情況下,索引數(shù)組的鍵名是從0開始,并依次遞增。它主要適用于利用位置來標識數(shù)組元素的情況。另外,索引數(shù)組的鍵名也可以自己指定
關聯(lián)數(shù)組: 指鍵名為字符串的數(shù)組。通常情況下,關聯(lián)數(shù)組元素的“鍵”和“值”之間有一定的義務邏輯關系。因此,通常使用關聯(lián)數(shù)組儲存一系列具有邏輯關系的變量。關聯(lián)數(shù)組的“鍵”都是字符串,并與“值”之間具有意義對應的關系
array()語言結構中的數(shù)組元素使用“鍵=>值”的方式進行表示,各元素之間使用逗號進行分割。
//定義索引數(shù)組 $fruits = array('apple', 'grape', 'pear'); // 省 略鍵名 $sports = array(2 => 'basketball', 4 => 'swimming'); // 指定鍵名
數(shù)組在省略鍵名的設置時,默認從0開始,依此遞增加1,因此該數(shù)組元素的鍵名依次為“0、1、2”。
除此之外,還可以根據實際需求自定義數(shù)組元素的鍵名,如上述示例中的$sports數(shù)組變量,將其第1個元素鍵名設置為2,第2個元素的鍵名設置為4
//定義關聯(lián)數(shù)組 $info = array('id' => 10, 'name' => 'Tom', 'tel' => 18810888188);
在定義關聯(lián)數(shù)組時 “鍵”則有明確的數(shù)據類型要求,具體如下。
在定義數(shù)組時,還可以定義沒有任何元素的數(shù)組,以及既有索引表示方式、又有關聯(lián)表示方式的數(shù)組元素。
//定義混合數(shù)組 $temp = array(); $mixed = array(2, 'str', 'id' => 5, 5 => 'b', 'a');
//定義多維數(shù)組 $data = array( 0 => array('name' => 'Tom', 'gender' => '男'), 1 => array('name' => 'Lucy', 'gender' => '女'), 2 => array('name' => 'Jimmy', 'gender' => '男') );
使用賦值方式定義數(shù)組,實際上就是創(chuàng)建一個數(shù)組變量,然后使用賦值運算符直接給變量賦值。
//賦值方式 $arr[] = 123; // 存儲結果:$arr[0] = 123 $arr[] = 'hello'; // 存儲結果:$arr[1] = 'hello' $arr[4] = 'PHP'; // 存儲結果:$arr[4] = 'PHP' $arr['name'] = 'Tom'; // 存儲結果: $arr['name'] = 'Tom' $arr[] = 'Java'; // 存儲結果:$arr[5] = 'Java'
賦值方式定義數(shù)組就是單獨為數(shù)組元素賦值。需要注意的是,賦值方式不能定義一個空數(shù)組。
短數(shù)組定義法([])與array()語法結構相同,只需將array()替換為[]即可
//短數(shù)組定義法 // 相當于:array('wind', 'fine') $weather = ['wind', 'fine']; // 相當于:array('id' => 12, 'name' => 'PHP') $object = ['id' => 12, 'name' => 'PHP']; // 相當于:array(array(1, 3), array(2, 4)) $num = [[1, 3], [2, 4]];
數(shù)組定義完成后,若想要查看數(shù)組中某個具體的元素,則可以通過“數(shù)組名[鍵]”的方式獲取。
``` //數(shù)組名[鍵] $sub = ['PHP', 'Java', 'C', 'Android']; $data = ['goods' => 'clothes', 'num' => 49.90, 'sales' => 500]; echo $sub[1]; // 輸出結果:Java echo $sub[3]; // 輸出結果:Android echo $data['goods']; // 輸出結果:clothes echo $data['sales']; // 輸出結果:500 ```
若要一次查看數(shù)組中的所有元素,則可以利用前面學習過的輸出語句函數(shù)print_r()和var_dump(),并且通常情況下為了使輸出的函數(shù)按照一定的格式打印,查看時經常與pre標記一起使用。
所謂遍歷數(shù)組就是一次訪問數(shù)組中所有元素的操作。通常情況下,使用foreach()語句完成數(shù)組的遍歷。
//方式一 foreach (數(shù)組名稱 as 鍵 => 值) { // 處理語句 } //方式二 foreach (數(shù)組名稱 as 值) { // 處理語句 }
“鍵”和“值”的變量名可以根據實際情況隨意設置
在數(shù)組定義完成后,有時也需要根據實際情況去除數(shù)組的某個元素。
不僅前面講解的標量數(shù)據類型可以進行比較運算,數(shù)組這種復合數(shù)據類型也可以進行運算,不過數(shù)組有其專門提供的數(shù)組操作符進行對應的運算。
“+”為聯(lián)合運算符,用于合并數(shù)組,如果出現(xiàn)下標相同的元素,則保留第1個數(shù)組內的元素。
$num = [2, 4]; $alp = ['a', 'b', 'c']; $mer1 = $num + $alp; $mer2 = $alp + $num; print_r($mer1); // 輸出結果:Array ( [0] => 2 [1] => 4 [2] => c ) print_r($mer2); //
更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結》、《php字符串(string)用法總結》、《php常用函數(shù)與技巧總結》、《PHP錯誤與異常處理方法總結》、《PHP基本語法入門教程》、《php面向對象程序設計入門教程》及《PHP數(shù)學運算技巧總結》
希望本文所述對大家PHP程序設計有所幫助。