Rumah > pembangunan bahagian belakang > tutorial php > Tatasusunan 2D dalam PHP

Tatasusunan 2D dalam PHP

WBOY
Lepaskan: 2024-08-29 12:43:14
asal
807 orang telah melayarinya

Susun atur ialah himpunan unsur dari sebarang jenis data. Terdapat banyak jenis data dalam php seperti rentetan, integer, boolean, tatasusunan, objek, sumber...dsb. Tatasusunan 2D ialah gabungan jenis data ini terutamanya tatasusunan. Terdapat tiga jenis Tatasusunan 2D yang berbeza dalam PHP iaitu yang berikut:

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

  • Susun Nombor
  • Susun Bersekutu
  • Susun Berbilang Dimensi

Jenis Tatasusunan 2D dalam PHP

Tiga Tatasusunan ini diterangkan di bawah:

1. Tatasusunan Angka

Tatasusunan dengan indeks berangka.

Sintaks:

array(value1, value2, value3, …);
Salin selepas log masuk

Contoh:

$input = array(10,20,30,40,50);
Salin selepas log masuk

2. Susunan Bersekutu

Tatasusunan dengan rentetan atau indeks nombor. Unsur tatasusunan ini disimpan dalam bentuk pasangan nilai kunci.

Sintaks:

array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3',…);
Salin selepas log masuk

Contoh:

$input =  array(0 =>Emma, 1=>Alice, 2=>'John');
Salin selepas log masuk

3. Tatasusunan Berbilang Dimensi

Tatasusunan tatasusunan ialah tatasusunan berbilang dimensi atau tatasusunan 2D atau tatasusunan bersarang. Format ini sentiasa tatasusunan atau tatasusunan. Dan dengan itu dipanggil tatasusunan bersarang.

Sintaks:

array (
array (elements...),
array (elements...),
...
)
Salin selepas log masuk

Contoh:

$input = array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);
Salin selepas log masuk

Dalam contoh di atas, tatasusunan input ialah contoh tatasusunan 2 dimensi. Di sini, tatasusunan utama mengandungi 2 elemen di mana setiap elemen itu sendiri lebih jauh tatasusunan 3 elemen.

Bagaimana untuk Mentakrifkan Tatasusunan 2D?

Kami mengetahui bahawa dalam tatasusunan 2D, elemen nilai ialah tatasusunan yang selanjutnya mungkin mempunyai sub-tatasusunan. Dimensi yang disebut dalam tatasusunan adalah dalam bentuk baris dan lajur. Mengingat format jadual tatasusunan adalah lebih mudah untuk mempelajari cara mentakrif tatasusunan ini. Bermaksud bahawa jika tatasusunan dua dimensi, dua indeks akan digunakan, begitu juga, jika tatasusunan tiga dimensi, tiga indeks akan digunakan dan seterusnya.

Bagaimana untuk Mencipta Tatasusunan 2D?

Memandangkan kami tahu cara mentakrifkan tatasusunan 2D, kami boleh menciptanya sekarang. Di sini indeks tidak ditakrifkan dan secara lalai ialah nombor yang sentiasa bermula dengan 0.

$input=array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);
Salin selepas log masuk

Tatasusunan juga boleh ditakrifkan dalam bentuk tatasusunan bersekutu.

(in key =>value form)
Salin selepas log masuk

Indeks atau kuncinya ialah rentetan seperti warna, buah-buahan dan kereta. Elemen nilai adalah dalam bentuk tatasusunan yang mengandungi 3 elemen setiap satu.

$input = array(
'colors'=>array ("Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("BMW", "Skoda", "Mercedes")
);
Salin selepas log masuk

Bagaimana untuk Mengakses Elemen Tatasusunan 2D?

Untuk mengakses nilai tatasusunan ini, anda boleh menggunakan kurungan segi empat sama. Apabila anda masuk ke dalam lebih banyak tahap tatasusunan 2D, penggunaan set kurungan segi empat sama akan meningkat dengan setiap tahap.

Contoh #1

Kod:

$input = array (
'colors' =>array ("Red", "Green", "Blue"),
'fruits' =>array ("Apple", "Orange", "Grapes"),
'cars' =>array ("Skoda", "BMW", "Mercedes")
);
Salin selepas log masuk

Ingat bahawa set pertama kurungan empat segi mengandungi kunci yang dalam kes ini adalah warna, buah-buahan, kereta. Diikuti dengan satu set lagi kurungan segi empat sama untuk melintasi tahap seterusnya dan boleh diakses dengan nombor seperti 0,1,2.

Jadi, jika kita ingin mengakses elemen "Anggur" dalam tatasusunan di atas,

echo $input['fruits'][2];
Salin selepas log masuk

Begitu juga contoh berikut

Jika kita mahu mengakses elemen "Mercedes" dalam tatasusunan maka

echo $input['cars'][2];
Salin selepas log masuk

Jika kita mahu mengakses elemen "Merah" dalam tatasusunan maka

echo $input['colors'][0];
Salin selepas log masuk

Memandangkan indeks sentiasa bermula dengan 0 dalam tatasusunan.

Contoh #2

Kod:

$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple"),
);
Salin selepas log masuk

Jika kami ingin mengakses elemen "Oren" dalam tatasusunan di atas, kami akan menggunakan baris berikut

echo $input[0][1];
Salin selepas log masuk

akan memberikan "Hijau"

echo $input[1][2];
Salin selepas log masuk

akan memberikan "Ungu"

echo $input[0][0];
Salin selepas log masuk

akan memberikan "Merah"

Bagaimana untuk Memasukkan Elemen Tatasusunan 2D dalam PHP?

Memandangkan kami tahu cara mentakrif, mencipta dan mengakses elemen tatasusunan, kami akan belajar sekarang cara memasukkan elemen dalam tatasusunan. Terdapat fungsi tatasusunan yang ditakrifkan dalam PHP untuk berfungsi pada tatasusunan berbilang dimensi seperti fungsi array_push() untuk dimasukkan, fungsi array_shift() untuk dialih keluar dan sebagainya.

$input = array (
'colors'=>array ("Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("Skoda", "BMW", "Mercedes")
);
Salin selepas log masuk

Menggunakan fungsi print_r() kami akan mencetak tatasusunan terlebih dahulu sebagaimana adanya.

Kod:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Sekarang untuk menambah elemen pada sub tatasusunan buah-buahan kita akan gunakan

array_push() function
Salin selepas log masuk

Sintaks:

array_push(array, value1,value2...)
Salin selepas log masuk

Di mana,

  • Tatasusunan ialah tatasusunan $input
  • nilai1 ialah elemen yang akan ditambahkan pada tatasusunan
  • nilai2, nilai3, adalah pilihan

Contoh #1

Kod:

$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
array_push($input['colors'], "Black");
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Dalam atur cara di bawah, kami hanya mengalih keluar kekunci "warna", dan mendapati ia ditambah pada tatasusunan terakhir yang diberikan dengan kekunci 0 seperti yang ditunjukkan dalam imej output.

Example #2

Code:

// create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// adding a value to array
array_push($input, "Black");
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Example #3

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//add a color to the array
array_push($input, "Black");
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

How to Update Elements of 2D Arrays in PHP?

To update an element of the 2D array just get the key from the array and replace the value of that key in a particular array.

$input['cars']['Mercedes']  = 'Duster';
Salin selepas log masuk

Example #1

Code:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//update the Mercedes with Duster
$input["cars"][2]  = "Duster";
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Example #2

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//update the Mercedes with Duster
$input[0][1] = "White";
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

How to Delete Elements of 2D Arrays?

To delete an element of the 2D array we will use array_shift() function.

array_shift removes and returns the first element value of the array.

Syntax:

array_shift(array)
Salin selepas log masuk

where

-array is the $input array

Example #1

Code:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//print the removed element
print_r(array_shift($input));
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Example #2

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//print the removed element
print_r(array_shift($input));
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Two dimensional in Associative Array

In the following example, we have created a 2-d array containing the information of books like the author of the book, type of book, and published in the year. Also, we will learn how to traverse or loop through this array. Looping through the multidimensional array we will use a nested foreach loop. Meaning one foreach loop inside another foreach loop. The same can also be done using for loop.

$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
Salin selepas log masuk

Just printing the above array without any loop will give us the following output:

Code:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
// print the plain multidimensional array
echo "
";
print_r($input);
echo "
";
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Now we will print the multidimensional array using a foreach loop.

Code:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
//foreach to loop the outer array
foreach($input as $book) {
echo "
"; // foreach to loop the inner array foreach($book as $key=>$value) { echo $key." ". $value. "
"; } }
Salin selepas log masuk

Output:

Tatasusunan 2D dalam PHP

Conclusion

I hope this article is helpful to learn the concepts of the topic on a 2D array in PHP. This topic covers all the concepts required for the understanding related to the 2D array in PHP. This topic is made simpler with the help of examples with the output snapshots to refer to. According to the article, if all the programs are practiced well will surely help you to grasp the concepts easily. I hope the topic is made more informative for gaining more knowledge.

Atas ialah kandungan terperinci Tatasusunan 2D dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php
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