品牌 |
庫存 | ##銷售 |
#Volvo | 33 | 20 |
#BMW | 17 | 15 |
Saab | 5 | 2 |
#Land Rover | 15 | 11 |
我們能夠在兩維數組中儲存上表中的數據,就像這樣:
$cars = array
(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
現在這個兩維數組包含了四個數組,並且它有兩個索引(下標):列和行.
如需存取$cars 陣列中的元素,我們必須使用兩個索引(行和列):
實例
<?php
header("Content-type:text/html;charset=utf-8");
$cars = array
(
array("Volvo",33,20),
array("BMW",17,15),
array("Saab",5,2),
array("Land Rover",15,11)
);
echo $cars[0][0].": 库存:".$cars[0][1].", 已售:".$cars[0][2].".<br>";
echo $cars[1][0].": 库存:".$cars[1][1].", 已售:".$cars[1][2].".<br>";
echo $cars[2][0].": 库存:".$cars[2][1].", 已售:".$cars[2][2].".<br>";
echo $cars[3][0].": 库存:".$cars[3][1].", 已售:".$cars[3][2].".<br>";
?>
我們也可以在For 迴圈中使用另一個For 迴圈,以獲得$cars 陣列中的元素(我們仍需使用兩個索引):
<?php
header("Content-type:text/html;charset=utf-8");
$cars = array
(
array("Volvo",33,20),
array("BMW",17,15),
array("Saab",5,2),
array("Land Rover",15,11)
);
for ($row = 0; $row < 4; $row++) {
echo "<p><b>行数 $row</b></p>";
echo "<ul>";
for ($col = 0; $col < 3; $col++) {
echo "<li>".$cars[$row][$col]."</li>";
}
echo "</ul>";
}
?>
二維陣列的建立方法:
二維陣列和一維陣列的建立方式是一樣的,只是將陣列中元素換成數組即可。同樣有兩種方法:“直接為數組元素賦值”和“array()函數”,下面我們實際的程式碼案例來詳細的給大家介紹一下這兩種方法。
1、直接為數組元素賦值
我們可以透過形如「$數組變數名[行下標] [列下標]= 值;
」的格式來建立並初始化二維陣列
<?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);
?>
輸出結果:
#二維陣列的行下標
和列下標
可以為空(即不指定具體的索引值),那麼預設為數字索引,而索引值預設從0 開始依序增加。
範例1:「列下標」為空
<?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);
?>
輸出結果:
範例2:「行下標」為空
<?php
header("Content-type:text/html;charset=utf-8");
$array[]['姓名'] = '张三';
$array[]['年龄'] = '25';
$array[]['性别'] = '男';
$array[]['姓名'] = '李四';
$array[]['年龄'] = '21';
$array[]['性别'] = '男';
$array[]['姓名'] = '娜娜';
$array[]['年龄'] = '22';
$array[]['性别'] = '女';
var_dump($array);
?>
輸出結果:
範例3:「行下標」和「列下標」都為空
<?php
header("Content-type:text/html;charset=utf-8");
$array[][] = '张三';
$array[][] = '25';
$array[][] = '男';
$array[][] = '李四';
$array[][] = '21';
$array[][] = '男';
$array[][] = '娜娜';
$array[][] = '22';
$array[][] = '女';
var_dump($array);
?>
輸出結果:
2、使用array()函數
使用array() 函數宣告二維陣列與宣告一維數組相似。
1)索引數組
<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
array("张三",25,"男"),
array("李四",21,"男"),
array("娜娜",22,"女")
);
var_dump($array);
?>
輸出結果:
#2)關聯數組
範例1 :
<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
"学生1"=>array("张三",25,"男"),
"学生2"=>array("李四",21,"男"),
"学生3"=>array("娜娜",22,"女")
);
var_dump($array);
?>
輸出結果:
範例2:
<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
"学生1"=>array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
"学生2"=>array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
"学生3"=>array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
var_dump($array);
?>
輸出結果:
說明:取得二維陣列中的元素
只需要註明每個維度的下標即可
<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
echo $array[0]['姓名'].'同学的年龄为'.$array[0]['年龄'].'岁';
?>
輸出結果:
张三同学的年龄为25岁
二、多維數組的建立
#多維數組是包含一個或多個陣列的陣列。
在多維數組中,主數組中的每一個元素也可以是數組,子數組中的每一個元素也可以是一個數組。
參考二維數組,我們可以很容易地了解多維數組的創建方法
#範例:三維數組的創建
<?php
header("Content-type:text/html;charset=utf-8");
$array = array(
'安徽' => array(
'合肥'=>array('蜀山区','长丰县','肥东'),
'宿州'=>array('墉桥区','灵璧县','泗县')
),
'河南' => array(
'洛阳'=>array('西工区','老城区','孟津县'),
'郑州市'=>array('中原区','金水区')
)
);
var_dump($array);
?>
輸出結果:
#推薦學習:《PHP影片教學》