Tutorial Array Pada PHP
Argument List & Spread Operator
Materi ini memiliki 1 buah lampiran. Namun Anda tidak dapat mengakses lampiran karena belum terdaftar di kursus ini. Klik disini untuk mendaftar.
Pada video ini, kita akan mempelajari mengenai cara menggunakan operator yang menggunakan simbol tiga buah tanda titik. Agar lebih jelas, kita langsung masuk ke contoh kasus penggunaannya.
Misalkan kita memiliki function sum dengan 2 buah parameter yaitu $number1 dan $number2. Tujuan dari function ini adalah menjumlahkan nilai dari semua parameter, jadi isi function adalah mengembalikan hasil dari $number1 ditambah $number2. Pada saat memanggil function, kita masukkan 2 buah argument, misalkan nilai 1 dan 2. Kalau dijalankan maka kita mendapatkan hasil 3.
Bagaimana kalau kita ingin agar function bisa menjumlahkan 3 buah nilai? Maka kita harus menambahkan parameter baru. Kita lihat prosesnya ya. Pertama kita harus tambahkan dahulu parameter baru yaitu int $number3. Kemudian isi functionnya juga mesti kita update menjadi menambahkan nilai dari $number1, $number2 dan $number3. Pada saat memanggil function, misalkan kita tambahkan argument baru nilai 3. Kalau dijalankan maka kita mendapatkan hasil 6.
Terus bagaimana kalau kita ingin agar function bisa memproses 4 buah parameter? Maka kita harus mengulangi proses yang tadi. Dan begitu juga kalau kita ingin menambahkan parameternya menjadi 5, 6 dan seterusnya.
Ada cara yang lebih sederhana untuk memecahkan masalah seperti ini. Pada bahasa pemograman PHP, cara ini diberi nama Argument List. Artinya kita memberikan argument yang berupa list atau daftar, yang jumlahnya bisa terserah dari 0 hingga tidak terhingga. Operator yang digunakan adalah simbol titik sebanyak 3.
Untuk menggunakannya maka kita bisa mengubah semua parameter kita menjadi satu buah parameter yaitu int ...$numbers. Agar tidak error, kita ubah dahulu bagian return menjadi mengembalikan nilai 0. Kita simpan dan jalankan.
Nah, tentunya teman-teman ingin tau ya. Kalau begini, apa nilai yang dikirimkan sebagai $numbers? Kita coba var_dump ya. Ternyata semua argument yang dikirimkan ke function sum akan menjadi satu buah array dengan nama numbers. Jadi di dalam function kita cukup menuliskan kode untuk memproses array ini.
Untuk menghitung jumlah nilainya, pertama kita buat dahulu variable penampung $result dengan nilai awal 0. Kemudian kita lakukan loop foreach($numbers as $number) yang isinya menjumlahkan $result dengan $number. Dan kemudian kita kembalikan nilai $result. Kalau kita jalankan, maka kita kembali mendapatkan nilai 6.
Namun function kita yang sekarang menjadi lebih flexible. Kita bisa memanggilnya tanpa argument sama sekali. Satu buah argument. 5 buah argument. Atau berapapun jumlah argumentnya. Function tetap berfungsi dengan baik. Jadi ini adalah contoh dari cara menggunakan fitur Argument List pada PHP, dengan menggunakan simbol tiga buah tanda titik.
Kita masuk ke materi berikutnya. Bagaimana kalau nilai 1 hingga 5 ini adalah sebuah array? Misalkan kita tambahkan tanda kurung siku ya, untuk mengubah argument dari 5 buah nilai integer menjadi 1 buah array.
Ternyata PHP mengembalikan fatal error. Argument harus menggunakan tipe data int, sedangkan yang kita kirim ini adalah tipe data array. Jadi tanda kurung siku ini harus kita buka menjadi sekumpulan nilai integer. Kalau di bahasa PHP, cara ini dikenal dengan istilah Unpacking Array. Kalau di bahasa pemograman lain, cara ini dikenal dengan operator Spread.
Caranya adalah dengan memberikan simbol tiga buah tanda titik di depan array. Artinya kita membuka array tersebut menjadi nilai-nilai yang disimpan di dalam array. Atau kodenya menjadi sama dengan yang tadi sebelum kita menggunakan tanda tiga buah tititk dan tanda kurung siku.
Jadi ini adalah caranya untuk menggunakan array ke dalam function yang seperti sum ya. Misalkan kita memiliki variable $array yang isinya adalah 1 hingga 5. Dan kita ingin menggunakan array tersebut sebagai argument pada function sum. Caranya adalah kita berikan tanda titik sebanyak 3 kali setelah itu barulah kita sebutkan nama variable $array. Barulah kita bisa mendapatkan hasilnya 15.
Dengan menggunakan fasilitas tanya jawab, maka Anda bisa bertanya dan akan dijawab langsung oleh instruktur kursus.
Anda belum terdaftar pada kursus ini sehingga tidak bisa mengajukan pertanyaan.