搜尋
首頁後端開發PHP問題php 多維數組是什麼

php 多維數組是什麼

Jan 13, 2023 pm 06:53 PM
phpphp數組

在php中,多維數組指的是包含一個或多個數組的數組,例如二維數組就是一維數組裡面再定義多個一維數組。陣列的維度指示您需要選擇元素的索引數,例如二維陣列需要兩個索引來選取元素、三維陣列需要三個索引來選取元素。

php 多維數組是什麼

本教學操作環境:windows7系統、PHP8版、DELL G3電腦

PHP - 多維陣列

多維數組指的是包含一個或多個陣列的陣列。

PHP 能理解兩、三、四或五級甚至更多級的多維數組。不過,超過三級深的陣列對多數人難於管理。

註解:陣列的維度指示您需要選擇元素的索引數。

  • 對於二維數組,您需要兩個索引來選取元素

  • 對於三維數組,您需要三個索引來選取元素

PHP - 兩維陣列

兩維陣列是陣列的陣列(三維陣列是陣列的陣列的陣列的陣列)。

首先,讓我們看看下面的表格:

##銷售#Volvo3320#BMW1715 Saab52#Land Rover1511

我們能夠在兩維數組中儲存上表中的數據,就像這樣:

$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>";
?>

php 多維數組是什麼

我們也可以在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>";
}
?>

php 多維數組是什麼

二維陣列的建立方法:

二維陣列和一維陣列的建立方式是一樣的,只是將陣列中元素換成數組即可。同樣有兩種方法:“直接為數組元素賦值”和“array()函數”,下面我們實際的程式碼案例來詳細的給大家介紹一下這兩種方法。

1、直接為數組元素賦值

我們可以透過形如「$數組變數名[行下標] [列下標]= 值;」的格式來建立並初始化二維陣列

<?php
header("Content-type:text/html;charset=utf-8");
$array[0][&#39;姓名&#39;] = &#39;张三&#39;;
$array[0][&#39;年龄&#39;] = &#39;25&#39;;
$array[0][&#39;性别&#39;] = &#39;男&#39;;
$array[1][&#39;姓名&#39;] = &#39;李四&#39;;
$array[1][&#39;年龄&#39;] = &#39;21&#39;;
$array[1][&#39;性别&#39;] = &#39;男&#39;;
$array[2][&#39;姓名&#39;] = &#39;娜娜&#39;;
$array[2][&#39;年龄&#39;] = &#39;22&#39;;
$array[2][&#39;性别&#39;] = &#39;女&#39;;
var_dump($array);
?>

輸出結果:

php 多維數組是什麼

#二維陣列的行下標列下標可以為空(即不指定具體的索引值),那麼預設為數字索引,而索引值預設從0 開始依序增加。

範例1:「列下標」為空

<?php
header("Content-type:text/html;charset=utf-8");
$array[0][] = &#39;张三&#39;;
$array[0][] = &#39;25&#39;;
$array[0][] = &#39;男&#39;;
$array[1][] = &#39;李四&#39;;
$array[1][] = &#39;21&#39;;
$array[1][] = &#39;男&#39;;
$array[2][] = &#39;娜娜&#39;;
$array[2][] = &#39;22&#39;;
$array[2][] = &#39;女&#39;;
var_dump($array);
?>

輸出結果:

php 多維數組是什麼

範例2:「行下標」為空

<?php
header("Content-type:text/html;charset=utf-8");
$array[][&#39;姓名&#39;] = &#39;张三&#39;;
$array[][&#39;年龄&#39;] = &#39;25&#39;;
$array[][&#39;性别&#39;] = &#39;男&#39;;
$array[][&#39;姓名&#39;] = &#39;李四&#39;;
$array[][&#39;年龄&#39;] = &#39;21&#39;;
$array[][&#39;性别&#39;] = &#39;男&#39;;
$array[][&#39;姓名&#39;] = &#39;娜娜&#39;;
$array[][&#39;年龄&#39;] = &#39;22&#39;;
$array[][&#39;性别&#39;] = &#39;女&#39;;
var_dump($array);
?>

輸出結果:

php 多維數組是什麼

範例3:「行下標」和「列下標」都為空

<?php
header("Content-type:text/html;charset=utf-8");
$array[][] = &#39;张三&#39;;
$array[][] = &#39;25&#39;;
$array[][] = &#39;男&#39;;
$array[][] = &#39;李四&#39;;
$array[][] = &#39;21&#39;;
$array[][] = &#39;男&#39;;
$array[][] = &#39;娜娜&#39;;
$array[][] = &#39;22&#39;;
$array[][] = &#39;女&#39;;
var_dump($array);
?>

輸出結果:

php 多維數組是什麼

2、使用array()函數

使用array() 函數宣告二維陣列與宣告一維數組相似。

1)索引數組

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    array("张三",25,"男"),
    array("李四",21,"男"),
    array("娜娜",22,"女")
);
var_dump($array);
?>

輸出結果:

php 多維數組是什麼

#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);
?>

輸出結果:

php 多維數組是什麼

範例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 多維數組是什麼

說明:取得二維陣列中的元素

只需要註明每個維度的下標即可

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
    array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
    array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
 echo $array[0][&#39;姓名&#39;].&#39;同学的年龄为&#39;.$array[0][&#39;年龄&#39;].&#39;岁&#39;;
?>

輸出結果:

张三同学的年龄为25岁

二、多維數組的建立

#多維數組是包含一個或多個陣列的陣列。

在多維數組中,主數組中的每一個元素也可以是數組,子數組中的每一個元素也可以是一個數組。

參考二維數組,我們可以很容易地了解多維數組的創建方法

#範例:三維數組的創建

<?php
header("Content-type:text/html;charset=utf-8");
$array = array(
        &#39;安徽&#39; => array(
            &#39;合肥&#39;=>array(&#39;蜀山区&#39;,&#39;长丰县&#39;,&#39;肥东&#39;),
			&#39;宿州&#39;=>array(&#39;墉桥区&#39;,&#39;灵璧县&#39;,&#39;泗县&#39;)
        ),
        &#39;河南&#39; => array(
            &#39;洛阳&#39;=>array(&#39;西工区&#39;,&#39;老城区&#39;,&#39;孟津县&#39;),
            &#39;郑州市&#39;=>array(&#39;中原区&#39;,&#39;金水区&#39;)
        )
);
 var_dump($array);
?>

輸出結果:

php 多維數組是什麼

#推薦學習:《PHP影片教學

品牌 庫存

以上是php 多維數組是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)