Rumah > pembangunan bahagian belakang > masalah PHP > Apakah tatasusunan berbilang dimensi php?

Apakah tatasusunan berbilang dimensi php?

青灯夜游
Lepaskan: 2023-03-17 19:00:02
asal
1182 orang telah melayarinya

Dalam PHP, tatasusunan berbilang dimensi merujuk kepada tatasusunan yang mengandungi satu atau lebih tatasusunan Contohnya, tatasusunan dua dimensi ialah tatasusunan satu dimensi dengan berbilang tatasusunan satu dimensi ditakrifkan di dalamnya. Dimensi tatasusunan menunjukkan bilangan indeks yang anda perlukan untuk memilih elemen Sebagai contoh, tatasusunan dua dimensi memerlukan dua indeks untuk memilih elemen, dan tatasusunan tiga dimensi memerlukan tiga indeks untuk memilih elemen.

Apakah tatasusunan berbilang dimensi php?

Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP8, komputer DELL G3

PHP - Array Multidimensi

Susun atur berbilang dimensi merujuk kepada tatasusunan yang mengandungi satu atau lebih tatasusunan.

PHP boleh memahami tatasusunan berbilang dimensi dua, tiga, empat atau lima peringkat atau lebih tahap lagi. Walau bagaimanapun, tatasusunan lebih daripada tiga tahap dalam adalah sukar untuk kebanyakan orang untuk mengurus.

Nota: Dimensi tatasusunan menunjukkan bilangan indeks elemen yang anda perlu pilih.

  • Untuk tatasusunan dua dimensi, anda memerlukan dua indeks untuk memilih elemen

  • Untuk tatasusunan tiga dimensi, anda memerlukan tiga indeks untuk pilih elemen

PHP - Tatasusunan dua dimensi

Susun atur dua dimensi ialah tatasusunan ( tatasusunan tiga dimensi ialah tatasusunan tatasusunan) ).

Pertama, mari kita lihat jadual di bawah:

品牌 库存 销量
Volvo 33 20
BMW 17 15
Saab 5 2
Land Rover 15 11

Kita boleh menyimpan data dalam jadual di atas dalam tatasusunan dua dimensi, seperti ini:

$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );
Salin selepas log masuk

Kini tatasusunan dua dimensi ini mengandungi empat tatasusunan, dan ia mempunyai dua indeks (subskrip ): baris dan lajur.

Untuk mengakses elemen dalam tatasusunan $cars kita perlu menggunakan dua indeks (baris dan lajur):

Instance

<?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>";
?>
Salin selepas log masuk

Apakah tatasusunan berbilang dimensi php?

Kita juga boleh menggunakan gelung For lain di dalam gelung For untuk mendapatkan elemen dalam tatasusunan $cars (kita masih perlu menggunakan dua indeks):

<?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>";
}
?>
Salin selepas log masuk

Apakah tatasusunan berbilang dimensi php?

Cara mencipta tatasusunan dua dimensi:

Susun atur dua dimensi dan tatasusunan satu dimensi dicipta dengan cara yang sama, hanya tambah tatasusunan Hanya gantikan elemen tengah dengan tatasusunan. Terdapat juga dua kaedah: "menetapkan nilai secara langsung kepada elemen tatasusunan" dan "fungsi array()". Di bawah ini kami akan memperkenalkan kedua-dua kaedah ini secara terperinci dengan contoh kod sebenar kami.

1. Tetapkan nilai secara langsung kepada elemen tatasusunan

Kami boleh mencipta dan memulakan tatasusunan dua dimensi dalam format seperti "$数组变量名[行下标] [列下标]= 值;"

<?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);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

行下标 dan 列下标 tatasusunan dua dimensi boleh kosong (iaitu, tiada nilai indeks tertentu adalah ditentukan), maka lalai ialah indeks angka, dan nilai indeks bermula dari 0 dan meningkat secara berurutan secara lalai.

Contoh 1: "Subskrip lajur" kosong

<?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);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

Contoh 2: "Subskrip baris" " kosong

<?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);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

Contoh 3: "Subskrip baris" dan "Subskrip lajur" kedua-duanya kosong

<?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);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

2 Gunakan fungsi tatasusunan()

Gunakan pengisytiharan fungsi tatasusunan() Tatasusunan 2 Dimensi ialah. serupa dengan mengisytiharkan tatasusunan satu dimensi.

1) Tatasusunan indeks

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

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

2) Tatasusunan bersekutu

Contoh 1:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    "学生1"=>array("张三",25,"男"),
    "学生2"=>array("李四",21,"男"),
    "学生3"=>array("娜娜",22,"女")
);
var_dump($array);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

Contoh 2:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    "学生1"=>array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
    "学生2"=>array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
    "学生3"=>array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
 var_dump($array);
?>
Salin selepas log masuk

Hasil keluaran:

Apakah tatasusunan berbilang dimensi php?

Penjelasan: Dapatkan elemen dalam tatasusunan dua dimensi

Anda hanya perlu menunjukkan subskrip setiap dimensi

<?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;;
?>
Salin selepas log masuk

Hasil keluaran:

张三同学的年龄为25岁
Salin selepas log masuk

2. Penciptaan tatasusunan berbilang dimensi

Tatasusunan berbilang dimensi ialah tatasusunan yang mengandungi satu atau lebih banyak tatasusunan.

Dalam tatasusunan berbilang dimensi, setiap elemen dalam tatasusunan utama juga boleh menjadi tatasusunan, dan setiap elemen dalam tatasusunan kecil juga boleh menjadi tatasusunan.

Dengan merujuk kepada tatasusunan dua dimensi, kita boleh memahami dengan mudah cara membuat tatasusunan berbilang dimensi

Contoh: Penciptaan tatasusunan tiga dimensi

<?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);
?>
Salin selepas log masuk

Hasil output :

Apakah tatasusunan berbilang dimensi php?

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apakah tatasusunan berbilang dimensi php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan