Array boleh menyimpan pelbagai jenis data dan merupakan jenis data komposit.
Kita boleh menggunakan tatasusunan() untuk memulakan tatasusunan, dan menggunakan koma untuk memisahkan setiap elemen tatasusunan
Selepas versi PHP5.4, permulaan tatasusunan adalah lebih ringkas dan. boleh digunakan dalam Kurungan [] untuk memulakan
Mari kita buat tatasusunan mudah:
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $array=array(100,1.34,true,"PHP中文网",); echo '<pre>'; var_dump($array); echo '<pre/>'; ?>
Dalam contoh di atas, kami mendapati bahawa kami mendepositkan :
1. Integer
2. Titik Terapung
3. Boolean<🎜 4.
StringNota
: Tujuan utama teg pra gema dalam contoh di atas adalah untuk mengeluarkannya sebagaimana adanya, dan format akan dipaparkan dengan lebih baik , lebih jelas.
Mari kita lihat hasil menjalankan program:
1 >2. 0 => int 100 Kita tahu bahawa int bermaksud integer, dan 100 ialah nilai integer. Jadi apakah maksud 0, 1, 2, 3 dan => sebelumnya?
3 0, 1, 2, dan 3 yang terkini mewakili nombor pengenalan bacaan nilai, yang kami panggil subskrip atau kunci (Bahasa Inggeris: key)
4. ialah nama standard untuk simbol yang dipanggil: koresponden nilai kunci. Oleh itu, kemudian melihat 0=> int 1 boleh dikatakan seperti ini. Aksesor subskrip 0 sepadan dengan 1 jenis integer.
5. Kami juga memanggil pasangan nilai kunci dalam elemen tatasusunan dan elemen ialah gabungan pasangan nilai kunci.
Melalui contoh di atas, kami telah melengkapkan salah satu kaedah pengisytiharan tatasusunan: pengisytiharan
tatasusunan indeks. Apa yang dipanggil tatasusunan indeks: ia adalah tatasusunan yang subskripnya adalah semua integer.
Petua
Subskrip tatasusunan indeks mesti bermula dari 0 Mulakan?
Jawapan: Soalan ini sebenarnya tidak benar Tatasusunan indeks tidak semestinya bermula dari 0. Bagaimana kita tidak boleh bermula dari 0?
Jawapan: Anda perlu menggunakan sedikit ilmu yang anda pelajari di atas. Ia adalah koresponden nilai utama. Seperti berikut
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $kele = array(5=>'只有不断努力才能博得未来',10 => 'php.cn', 'PHP中文网' ,'好好学习哦', 19 => '去PHP中文网学习PHP'); //打印显示$kele echo '<pre>'; var_dump($kele); echo '</pre>'; ?>
Seperti yang dapat dilihat daripada contoh di atas, subskrip tatasusunan indeks kami bermula dari 5
Mari kita ringkaskan peraturan:
Jika tatasusunan indeks tidak mengisytiharkan subskripnya secara paksa, subskripnya bermula dari 0. (Nilai tatasusunan pertama kami: Hanya melalui usaha berterusan kami boleh memenangi masa depan. Subskrip nilai ini ialah 0).
2. Jika saya telah menentukan subskrip, subskripnya ialah nilai yang saya nyatakan. Sebagai contoh, subskrip 5, 10 dan 19 adalah semua nilai yang telah saya tentukan.
3. Jika nilai tertentu (seperti php.cn) dipaksa untuk menentukan subskrip (subskrip ialah 10). Nilai ditambah selepasnya (Akademi PHP), jika tiada subskrip dinyatakan. Subskrip mereka meningkat
dengan kerap kepada nilai maksimum +1.
Associative array
Tukar tatasusunan indeks dengan sewajarnya bentuk tatasusunan bersekutu muncul. Selagi terdapat tatasusunan rentetan dalam tatasusunan, ia adalah tatasusunan bersekutu.
Kemudian mari kita isytiharkan tatasusunan bersekutu. Ini dilakukan dengan cara yang sama seperti pengisytiharan tatasusunan yang diindeks. Tetapi perbezaannya ialah subskrip rentetan mesti ditentukan dan korespondensi nilai kunci mesti digunakan.
Contoh
<?php $arr=[ //用[]创建数组 'name'=>'Tom', 'age'=>'18', 'gender'=>'male' ]; echo "<pre>"; var_dump($arr) ; echo"</pre>" ?>
Kita tahu melalui eksperimen:
1 . Mengisytiharkan bahawa tatasusunan bersekutu ialah nama kunci => nilai
2 Tatasusunan bersekutu boleh mempunyai unsur tatasusunan indeks
Aturcara ialah jenis yang paling biasa digunakan. untuk mengira bilangan tatasusunan satu dimensi tertentu. Malah, kita boleh menggunakan salah satu fungsi matematik yang kita pelajari sebelum ini: count(). Fungsi
count($variable) digunakan untuk mengembalikan panjang tatasusunan (bilangan elemen ):
Instance
<?php $name=Array('tom','andy','jack'); echo count($name); ?>
Gunakan gelung for untuk melintasi tatasusunan indeks
Lintas dua perkataan, yang bermaksud membaca dan mengakses kesemuanya satu demi satu dan memaparkannya.
Oleh kerana gelung for ialah gelung pengiraan mudah dan subskrip tatasusunan indeks ialah nilai integer. Oleh itu, kita boleh lelaran melalui tatasusunan indeks melalui gelung for.
Instance
<?php $arr=Array('tom','andy','jack'); $arrlength=count($arr); for($x=0;$x<$arrlength;$x++){ echo $arr[$x]; echo "<br/>"; } ?>
Melalui contoh di atas, kita gelungkan tatasusunan .
Oleh kerana subskrip bermula dari 0, tentukan $i=0. Biarkan $i meningkat sebanyak 1 setiap kali ia gelung, tetapi ia mestilah kurang daripada 3, kerana nilai maksimum subskrip tatasusunan ialah 2.
Dengan cara ini, kami telah belajar untuk melintasi tatasusunan subskrip berturut-turut yang diindeks.
Maka persoalannya ialah:
Bagaimana pula dengan tatasusunan bersekutu? Bagaimana jika subskrip tatasusunan indeks tidak berturut-turut?
Ini akan menggunakan pengetahuan yang telah kami pelajari di bawah.
Sintaks asas foreach
Terdapat gelung Boolean yang digunakan khas untuk menggelung tatasusunan. Sintaks asas gelung ini ialah sintaks asas foreach
foreach( Pembolehubah tatasusunan yang akan digelung sebagai [pembolehubah kunci =>] pembolehubah nilai ){
//Kandungan gelung
}
Ini adalah penggunaan tetap, letakkan tatasusunan yang hendak digelungkan.
sebagai ialah kata kunci tetap Pembolehubah kunci selepas
adalah pilihan dan berikannya kepada pembolehubah utama Pembolehubah nilai selepas
diperlukan. Setiap kali ia gelung, nilai diletakkan dalam pembolehubah nilai.
Mari kita gunakan kod sebagai contoh untuk meningkatkan pemahaman kita tentang sintaks ini.
Instance
?php $arr=[ 'name'=>'Tom', 'age'=>'18', 'gender'=>'male' ]; foreach($arr as $key=>$value){ echo $key.": ".$value."<br />"; }; ?>
Melalui keputusan berjalan di atas kami mendapat keputusan berikut:
1 . Setiap kali anda gelung, tetapkan subskrip kepada pembolehubah $kunci dan tetapkan pembolehubah nilai kepada pembolehubah $value
2. Selepas membaca hingga akhir dan mendapati bahawa tiada unsur tatasusunan yang boleh dibaca, gelung berhenti melintasi data.
Nota: $key dan $value tidak semestinya nama pembolehubah. Anda juga boleh menamakannya sesuatu yang lain, seperti $kai => $wen adalah sama. Anda perlu tahu pembolehubah mana yang diberikan kekunci
dan pembolehubah lain nilai itu diberikan.
Lintas tatasusunan indeks berterusan melalui foreach, seperti dalam contoh berikut:
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 $data = array( 0 => '中国', 100 => '美国', 20 => '韩国', 300 => '德国', ); foreach($data as $k => $v){ echo $k . '------' . $v .'<br />'; } ?>
Hasil penaakulan berdasarkan hasil foreach adalah sama seperti hasil tatasusunan bersekutu yang baru dilakukan.
Perbezaannya ialah tatasusunan indeks tak selanjar. Setiap kali elemen tatasusunan dibaca, subskrip gelung semasa diberikan kepada pembolehubah $k, dan nilai diberikan kepada pembolehubah $v. Kunci dan nilai adalah input
untuk setiap bacaan dan kemudian dipaparkan. Gelung bergerak ke belakang satu indeks pada satu masa. Baca hingga akhir dan keluar dari pelaksanaan.
Array Pelbagai Dimensi
Kami akan berada dalam PHP Advanced Tutorial Terangkan tatasusunan berbilang dimensi dalam.
Manual Rujukan Tatasusunan PHP yang lengkap
Untuk manual rujukan lengkap fungsi tatasusunan, sila lawati Manual Rujukan Tatasusunan PHP kami.
Manual rujukan ini mengandungi penerangan ringkas dan contoh penggunaan bagi setiap fungsi.