php數組的類型:1、索引數組,其下標(鍵名)由數字組成,預設從0開始,每個數字對應一個數組元素在數組中的位置;2、關聯數組,其下標(鍵名)由數值和字串混合的形式組成;3、多維數組,包含一個或多個數組的數組。
本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦
陣列就是一組資料的集合,把一系列資料組織起來,形成一個可操作的整體。 PHP 中的陣列較為複雜,但比其他許多高階語言中的陣列更為靈活。
數組 array 是一組有序的變量,其中每個值被稱為一個元素。每個元素由一個特殊的標識符來區分,這個標識符稱為鍵(也稱為下標)。
陣列中的每個實體都包含兩項,分別是鍵(key)和值(value)。可以透過鍵值來取得對應的陣列元素,這些鍵可以是數值鍵,也可以是關聯鍵。如果說變數是儲存單一值的容器,那麼陣列就是儲存多個值的容器。
PHP 陣列比其他高階語言中的陣列更靈活,不但支援以數字為鍵名的索引數組,而且支援以字串或字串、數字混合為鍵名的關聯數組。而在其他高階語言中,如 Java 或 C 等語言的數組,則只支援數字索引數組。
PHP 陣列的結構如下圖所示:
#php陣列的型別
索引陣列:陣列的下標是數字;
#關聯陣列:陣列的下標為字元是關聯數組;
多維數組:包含一個或多個陣列的陣列;
#1、索引數組
索引陣列儲存一系列經過組織的單一或多個值,其中的每個值都可以透過使用一個無符號整數值進行存取。索引數組的鍵是整數,而且從0開始以此類推。 索引陣列初始化範例:<?php //创建一个索引数组,索引数组的键是“0”,值是“苹果” $fruit=array("苹果","香蕉"); print_r($fruit); ?>執行結果:
Array ( [0] => 苹果 [1] => 香蕉 )
索引陣列的三種賦值方式:
array[0]='蘋果';
#$arr=array('0'=>'蘋果');
$arr=array('蘋果');
<?php //请创建一个数组变量arr,并尝试创建一个索引数组,键是0,值是苹果 $arr=array(0=>'苹果'); if( isset($arr) ) {print_r($arr);} ?>用for與foreach可以存取到陣列裡面的元素,因for比較容易下面只舉使用foreach的例子,
<?php $fruit=array('苹果','香蕉','菠萝'); foreach($fruit as $key=>$value){ echo '<br>第'.$key.'值是:'.$value; } ?>運行結果:
第0值是:苹果 第1值是:香蕉 第2值是:菠萝註:這裡$key是鍵值$value則是元素值
2、關聯陣列
「關聯陣列」是一種具有特殊索引方式的陣列。使用字串或其他類型的值(除了NULL)來索引它。 其實關聯數組和索引數組的差異只是在鍵值上,關聯數組的鍵值是字串,並且是人為的規定,例如:<?php //创建一个关联数组,关联数组的键“orange”,值是“橘子” $fruit=array('orange'=>'橘子'); echo $fruit['orange']; ?>其餘初始化,賦值,foreach的用法基本上相同。
3、多維數組
資料結構中的概念, 二維數組以上的數組,既非線性也非平面的數組成為多維數組。<?php $arr = array( '安徽' => array( '阜阳'=>array('阜南县','临泉县','颍州区'), '宿州'=>array('墉桥区','灵璧县','泗县'), '合肥'=>array('蜀山区','长丰县','肥东') ), '河南' => array( '洛阳'=>array('西工区','老城区','孟津县'), '郑州市'=>array('中原区','金水区') ) ); print_r($arr); echo $arr['安徽']['宿州'][0]; // 输出墉桥区 ?>其中「安徽」對應的是一個二維數組,「阜陽」「宿州」「合肥」分別對應一個一維數組;同理,「河南」也對應一個二維數組。 「安徽」和「河南」分別對應一個二維數組,它兩個組合起來形成一個三維數組。 PHP 中對多維數組沒有上限的固定限制,但隨著維數的增加,陣列會越來越複雜,對於閱讀偵錯和維護都會稍微困難些。以上程式的運作結果為:
Array ( [安徽] => Array ( [阜阳] => Array ( [0] => 阜南县 [1] => 临泉县 [2] => 颍州区 ) [宿州] => Array ( [0] => 墉桥区 [1] => 灵璧县 [2] => 泗县 ) [合肥] => Array ( [0] => 蜀山区 [1] => 长丰县 [2] => 肥东 ) ) [河南] => Array ( [洛阳] => Array ( [0] => 西工区 [1] => 老城区 [2] => 孟津县 ) [郑州市] => Array ( [0] => 中原区 [1] => 金水区 ) ) ) 墉桥区推薦學習:《
PHP影片教學》
以上是php數組有哪幾種類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!