Penjelasan Array
Sejauh ini, variabel-variabel yang telah kita bahas hanya berisi sebuah nilai tunggal, seperti:<?php $i = 5; ?>
<?php // define an array $bahan_pizza = array('bawang', 'tomat', 'keju', 'ikan asin', 'daging sapi', 'pepperoni'); print_r($bahan_pizza); ?>
print_r () adalah fungsi khusus yang memungkinkan Anda untuk mengambil menyelinap mengintip ke dalam sebuah array. Ini lebih berguna untuk debugging (mencari tahu mengapa naskah Anda tidak bekerja) daripada untuk tujuan tampilan, tapi aku akan menggunakannya di sini sehingga Anda dapat melihat apa yang sedang terjadi di bawah permukaan. Anda memiliki server Anda berjalan dan browser Anda terbuka, kan?
Berbagai elemen array diakses melalui nomor indeks, dengan elemen pertama dimulai dari nol. Jadi, untuk mengakses elemen ‘bawang’, Anda akan menggunakan notasi $bahan_pizza[0], sedangkan ‘ikan asin’ akan menjadi $bahan_pizza[3] – pada dasarnya, nama variabel array diikuti oleh nomor indeks dalam kurung siku tertutup.
PHP juga memungkinkan Anda untuk mengganti indeks dengan yang ditetapkan pengguna “kunci/key”, dalam rangka menciptakan sedikit berbeda tipe array. Setiap tombol adalah unik, dan sesuai dengan nilai tunggal dalam array.
<?php //Define sebuah array $buah = array('merah' => 'apel', 'kuning' => 'pisang', 'ungu' => 'plum', 'hijau' => 'anggur'); print_r($buah); ?>
Tipe array ini kadang-kadang disebut sebagai “hash” atau “array asosiatif”. Jika Anda pernah menggunakan Perl, Anda akan melihat kemiripan dengan variabel hash Perl.
Makanan Italia
Paling sederhana adalah untuk mendefinisikan variabel array adalah array () function.Begini caranya:
<?php // define an array $pasta = array('spaghetti', 'penne', 'macaroni'); ?>
Atau, Anda bisa mendefinisikan sebuah array dengan menetapkan nilai untuk setiap elemen dalam notasi indeks, seperti ini:
<?php // define an array $pasta[0] = 'spaghetti'; $pasta[1] = 'penne'; $pasta[2] = 'macaroni'; ?>
<?php // Define sebuah array $menu['sarapan'] = 'daging dan telur'; $menu['makan siang'] = 'daging sapi panggang'; $menu['makan malam'] = 'lasagna'; ?>
<?php // Menambahkan elemen ke array $bahan_pizza[3] = 'zaitun hijau'; ?>
<?php // Memodifikasi sebuah array $bahan_pizza[4] = 'ayam'; ?>
<?php // Memodifikasi sebuah array $menu['makan siang'] = 'steak dengan kentang pure'; ?>
Push and Pull (Dorong Dan Tarik)
Anda juga dapat menambahkan elemen ke akhir array yang sudah ada dengan array_push () function:<?php // Define sebuah array $pasta = array('spaghetti', 'penne', 'makaroni'); // Menambahkan suatu elemen akhir array_push($pasta, 'tagliatelle'); print_r($pasta); ?>
<?php // Define sebuah array $pasta = array('spaghetti', 'penne', 'makaroni'); // Menghapus 1 elemen dari ujung akhir array_pop($pasta); print_r($pasta); ?>
<?php // Define sebuah array $pasta = array('spaghetti', 'penne', 'makaroni'); // Mengambil elemen dari atas array_shift($pasta); print_r($pasta); ?>
<?php // Define sebuah array $pasta = array('spaghetti', 'penne', 'makaroni'); // Menambahkan suatu unsur ke awal array_unshift($pasta, 'tagliatelle'); print_r($pasta); ?>
Fungsi Explode dan Implode
Fungsi explode() memecah string ke dalam komponen yang lebih kecil, yang didasarkan pada pengguna ditentukan pemisah, dan mengembalikan potongan sebagai elemen sebagai array.<?php // Define CSV string $str = 'merah, biru, hijau, kuning'; // Dipecah menjadi kata-kata $warna = explode(',', $str); print_r($warna); ?>
<?php // Define array $warna = array ( 'merah', 'biru', 'hijau', 'kuning'); // Gabung menjadi satu string dengan 'dan' // Kembali 'merah, biru, dan hijau dan kuning' $str = implode('dan', $warna); print $str; ?>
Sort dan Rsort – Pengurutan pada Array
Kedua contoh di bawah ini menunjukkan bagaimana fungsi sort() dan rsort() dapat digunakan untuk mengurutkan array abjad (atau secara numerik), di urutan menaik dan menurun:<?php // Define sebuah array $pasta = array ('spaghetti', 'penne', 'makaroni'); // Mengembalikan array diurutkan sesuai abjad sort($pasta); print_r($pasta); print "<br />"; // Mengembalikan array diurutkan sesuai abjad terbalik rsort($pasta); print_r($pasta); ?>
Looping Loop
Jadi yang menangani data meletakkan di dalam sebuah array. Sekarang, bagaimana mendapatkan itu keluar?Mengambil data dari sebuah array sangat sederhana: semua yang perlu Anda lakukan adalah mengakses elemen yang sesuai dari array menggunakan nomor indeks. Untuk membaca seluruh array anda hanya loop di atasnya, menggunakan salah satu konstruksi loop yang Anda pelajari di Bagian sebelum nya dari tutorial ini.
Bagaimana contoh cepat?
<html> <head> </head> <body> Band-band favorit saya adalah: <ul> <?php // Define array $seniman = array ('Metallica', 'Evanescence', 'Linkin Park', 'Guns n Roses'); // Loop di atasnya dan mencetak elemen array for ($x = 0; $x < sizeof ($seniman); $x++) { echo '<li>' . $seniman[$x] . '</li>'; } ?> </ul> </body> </html>
Band-band favorit saya adalah:Dalam hal ini, saya telah menetapkan sebuah array, dan kemudian menggunakan for () loop untuk: berjalan melalui itu, ekstrak unsur-unsur menggunakan notasi indeks, dan menampilkan mereka satu demi satu.
* Metallica
* Evanescence
* Linkin Park
* Guns n Roses
Aku akan menarik perhatian Anda di sini ke fungsi sizeof (). Fungsi ini adalah salah satu yang paling penting dan sering digunakan fungsi array. Ini mengembalikan ukuran (baca: jumlah elemen dalam) array. Hal ini kebanyakan digunakan dalam loop loket untuk memastikan bahwa loop iterates sebanyak yang terdapat elemen-elemen dalam array.
Jika Anda menggunakan array asosiatif, yang array_keys () dan array_values () fungsi berguna, untuk mendapatkan daftar semua kunci dan nilai-nilai dalam array.
<?php //Define sebuah array $menu = array ('sarapan' => 'daging dan telur', 'makan siang' => 'daging sapi panggang', 'makan malam' => 'lasagna'); /* Mengembalikan array ( 'sarapan', 'makan siang', 'makan malam') dengan angka indeks */ $result = array_keys($menu); print_r($result); print "<br />"; /* Mengembalikan array ( 'daging dan telur', 'daging panggang', 'lasagna') dengan angka indeks */ $result = array_values ($menu); print_r($result); ?>
Alternatif baru untuk pemanggilan Loop! (PENTING)
Namun ada, cara yang lebih sederhana untuk penggalian semua elemen array. PHP 4,0 memperkenalkan sebuah pukulan-jenis loop baru yang dirancang khusus untuk tujuan iterasi array: yang foreach () loop. (Hal ini mirip dengan sintaks Perl membangun nama yang sama.) Inilah yang menjadi seperti ini:<?php foreach ($array as $temp) { //melakukan ini! } ?>
Untuk lebih memahami bagaimana ini bekerja, mempertimbangkan ini menulis ulang dari contoh sebelumnya, dengan menggunakan foreach () loop:
<html> <head> </head> <body> Band-band favorit saya adalah: <ul> <?php // Define array $seniman = array ('Metallica', 'Evanescence', 'Linkin Park', 'Guns n Roses'); // Loop di atasnya // Mencetak elemen array foreach ($seniman as $a) { echo '<li>' . $a . '</li>'; } ?> </ul> </body> </html>
Musik untuk Misa
Selain jelas mereka menggunakan, array dan loop juga datang dalam bentuk berguna saat memproses di PHP. Sebagai contoh, jika Anda memiliki grup kotak centang yang terkait atau multi-pilih daftar, Anda dapat menggunakan sebuah array untuk mengambil semua bentuk nilai-nilai yang dipilih dalam satu variabel, untuk menyederhanakan proses. Perhatikan contoh berikut, yang menggambarkan ini:<html> <head> </head> <body> <?php // Memeriksa submit if (!isset ($_POST['submit'])) { // Dan menampilkan form ?> <form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "POST"> <input type="checkbox" name="artist[]" value="Bon Jovi"> Bon Jovi <input type="checkbox" name="artist[]" value="N'Sync"> N'Sync <input type="checkbox" name="artist[]" value="Boyzone"> Boyzone <input type="checkbox" name="artist[]" value="Britney Spears"> Britney Spears <input type="checkbox" name="artist[]" value="Jethro Tull"> Jethro Tull <input type="checkbox" name="artist[]" value="Crosby, Stills & Nash"> Crosby, Stills & Nash <input type="submit" name="submit" value="Select"> </form> <?php } else { // Atau menampilkan artist yang dipilih // Menggunakan foreach loop untuk membaca dan menampilkan elemen array if (is_array ($_POST['artis'])) { echo 'Anda memilih: <br />'; foreach ($_POST['artist'] as $a) { echo "<i>" . $a . "</i> <br />"; } } else { echo 'Tidak ada yang dipilih'; } } ?> </body> </html>
Anda dapat melakukan ini dengan multi-pilih daftar juga, hanya dengan menggunakan notasi array dipilih dari “nama” atribut. Mencobanya sendiri dan melihat … dan pastikan Anda menjalankan PHP selama tutorial.
Tidak ada komentar:
Posting Komentar