PHP是支持一維和多維數(shù)組,在之前的文章《PHP數(shù)組學(xué)習(xí)之一維數(shù)組如何創(chuàng)建和初始化(代碼詳解)》中我們通過代碼示例給大家詳細(xì)介紹了一維數(shù)組創(chuàng)建和初始化的幾種方法,那么下面我們來了解一下PHP中的二維數(shù)組(多維數(shù)組),看看二維數(shù)組(多維數(shù)組)要如何創(chuàng)建,一起學(xué)習(xí)吧!
這篇文章我們會(huì)通過代碼實(shí)例先介紹一下二維數(shù)組數(shù)組的創(chuàng)建方法,進(jìn)而擴(kuò)展介紹一下多維數(shù)組的創(chuàng)建方法。下面就來一起看看。
所謂的二維數(shù)組,簡單來說就是在一維數(shù)組里面再定義多個(gè)一維數(shù)組,即一個(gè)數(shù)組中的值可以是另一個(gè)數(shù)組(可能有點(diǎn)片面,但是二維數(shù)組的原理大致是這樣)。二維數(shù)組本質(zhì)上是以數(shù)組作為數(shù)組元素的數(shù)組,即“數(shù)組的數(shù)組”,類型說明符為“數(shù)組名[常量表達(dá)式][常量表達(dá)式]
”。
一、二維數(shù)組的創(chuàng)建
二維數(shù)組和一維數(shù)組的創(chuàng)建方式是一樣的,只是將數(shù)組中元素?fù)Q成數(shù)組即可。同樣有兩種方法:“直接為數(shù)組元素賦值”和“array()函數(shù)”,下面我們實(shí)際的代碼案例來詳細(xì)的給大家介紹一下這兩種方法。
1、直接為數(shù)組元素賦值
我們可以通過形如“$數(shù)組變量名[行下標(biāo)] [列下標(biāo)]= 值;
”的格式來創(chuàng)建并初始化二維數(shù)組
<?php header("Content-type:text/html;charset=utf-8"); $array[0]['姓名'] = '張三'; $array[0]['年齡'] = '25'; $array[0]['性別'] = '男'; $array[1]['姓名'] = '李四'; $array[1]['年齡'] = '21'; $array[1]['性別'] = '男'; $array[2]['姓名'] = '娜娜'; $array[2]['年齡'] = '22'; $array[2]['性別'] = '女'; var_dump($array); ?>
輸出結(jié)果:
二維數(shù)組的行下標(biāo)
和列下標(biāo)
可以為空(即不指定具體的索引值),那么默認(rèn)為數(shù)字索引,而索引值默認(rèn)從 0 開始依次增加。
示例1:“列下標(biāo)”為空
<?php header("Content-type:text/html;charset=utf-8"); $array[0][] = '張三'; $array[0][] = '25'; $array[0][] = '男'; $array[1][] = '李四'; $array[1][] = '21'; $array[1][] = '男'; $array[2][] = '娜娜'; $array[2][] = '22'; $array[2][] = '女'; var_dump($array); ?>
輸出結(jié)果:
示例2:“行下標(biāo)”為空
<?php header("Content-type:text/html;charset=utf-8"); $array[]['姓名'] = '張三'; $array[]['年齡'] = '25'; $array[]['性別'] = '男'; $array[]['姓名'] = '李四'; $array[]['年齡'] = '21'; $array[]['性別'] = '男'; $array[]['姓名'] = '娜娜'; $array[]['年齡'] = '22'; $array[]['性別'] = '女'; var_dump($array); ?>
輸出結(jié)果:
示例3:“行下標(biāo)”和“列下標(biāo)”都為空
<?php header("Content-type:text/html;charset=utf-8"); $array[][] = '張三'; $array[][] = '25'; $array[][] = '男'; $array[][] = '李四'; $array[][] = '21'; $array[][] = '男'; $array[][] = '娜娜'; $array[][] = '22'; $array[][] = '女'; var_dump($array); ?>
輸出結(jié)果:
2、使用array()函數(shù)
使用 array() 函數(shù)聲明二維數(shù)組與聲明一維數(shù)組相似。
1)索引數(shù)組
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("張三",25,"男"), array("李四",21,"男"), array("娜娜",22,"女") ); var_dump($array); ?>
輸出結(jié)果:
2)關(guān)聯(lián)數(shù)組
示例1:
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( "學(xué)生1"=>array("張三",25,"男"), "學(xué)生2"=>array("李四",21,"男"), "學(xué)生3"=>array("娜娜",22,"女") ); var_dump($array); ?>
輸出結(jié)果:
示例2:
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( "學(xué)生1"=>array("姓名"=>"張三","年齡"=>25,"性別"=>"男"), "學(xué)生2"=>array("姓名"=>"李四","年齡"=>21,"性別"=>"男"), "學(xué)生3"=>array("姓名"=>"娜娜","年齡"=>22,"性別"=>"女") ); var_dump($array); ?>
輸出結(jié)果:
說明:獲取二維數(shù)組中的元素
只需要注明每個(gè)維度的下標(biāo)即可
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("姓名"=>"張三","年齡"=>25,"性別"=>"男"), array("姓名"=>"李四","年齡"=>21,"性別"=>"男"), array("姓名"=>"娜娜","年齡"=>22,"性別"=>"女") ); echo $array[0]['姓名'].'同學(xué)的年齡為'.$array[0]['年齡'].'歲'; ?>
輸出結(jié)果:
張三同學(xué)的年齡為25歲
二、多維數(shù)組的創(chuàng)建
多維數(shù)組是包含一個(gè)或多個(gè)數(shù)組的數(shù)組。
在多維數(shù)組中,主數(shù)組中的每一個(gè)元素也可以是一個(gè)數(shù)組,子數(shù)組中的每一個(gè)元素也可以是一個(gè)數(shù)組。
參考二維數(shù)組,我們可以很容易地了解多維數(shù)組的創(chuàng)建方法
示例:三維數(shù)組的創(chuàng)建
<?php header("Content-type:text/html;charset=utf-8"); $array = array( '安徽' => array( '合肥'=>array('蜀山區(qū)','長豐縣','肥東'), '宿州'=>array('墉橋區(qū)','靈璧縣','泗縣') ), '河南' => array( '洛陽'=>array('西工區(qū)','老城區(qū)','孟津縣'), '鄭州市'=>array('中原區(qū)','金水區(qū)') ) ); var_dump($array); ?>
輸出結(jié)果:
推薦:《2021年P(guān)HP面試題大匯總(收藏)》《php視頻教程》