Tutorial Function Pada PHP
Return Value
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 membahas mengenai return value pada function.
Secara default, function tidak mengembalikan nilai. Namun kita bisa mengatur agar function mengembalikan suatu nilai, dengan menggunakan kata kunci return. Yang perlu diingat disini adalah function hanya bisa mengembalikan satu tipe data. Jadi kalau kita menggunakan tipe data yang hanya bisa menyimpan satu nilai, seperti integer, float, bool dan string, maka kita hanya bisa mengembalikan satu nilai. Apabila kita ingin mengembalikan banyak nilai sekaligus, maka kita bisa menggunakan struktur data array dan object.
Kita lihat contoh kodenya. Pada bagian kiri adalah function total yang kita buat pada tutorial sebelumnya. Function bertujuan untuk menjumlahkan kedua parameter, dan menampilkan hasilnya langsung di layar.
Perhatikan di sebelah kanannya, function telah kita ubah agar mengembalikan nilai hasil penjumlahannya. Di dalam function, kita menulis return diikuti oleh nilai dari parameter $a ditambah $b. Artinya nilai hasil penjumlahan kita kembalikan ke pemanggil function.
Perhatikan juga cara memanggil function total juga berubah. Pemanggil function akan menerima hasil perhitungan, dan nilai hasil ini disimpan sebagai variable $value. Setelah itu barulah kita mencetak nilai dari variable $value.
Sampai disini mungkin teman-teman bertanya ya. Mengapa nilainya mesti dikembalikan oleh function? Kode yang tadinya bisa lebih singkat di sebelah kiri, malah berubah menjadi lebih panjang dan ribet di sebelah kanan.
Nah, jawabannya adalah karena pada saat kita membuat function, kita hanya perlu fokus untuk mengolah nilai yang dimasukkan ke dalam function dalam bentuk parameter. Setelah itu kita kembalikan nilai hasil perhitungannya. Apa yang akan dilakukan pada hasil perhitungan akan ditentukan oleh si pemanggil function. Mengapa? Karena hasil perhitungan itu belum tentu hanya untuk ditampilkan di layar saja. Bisa saja hasil perhitungan harus disimpan ke file, atau disimpan ke database, atau dipakai lagi pada proses berikutnya. Dengan menggunakan kata kunci return, maka penggunaan function kita bisa menjadi lebih flexible.
Kita coba praktek coding ya. Kita buka lagi file total.php dari tutorial sebelumnya. Kita memiliki function total dengan 2 parameter $a dan $b. Function ini bertujuan untuk menjumlahkan kedua parameter dan menampilkannya ke layar. Kalau kita memanggil function total dengan argument 1 dan 2, maka kita mendapatkan hasil 3 yang ditampilkan ke layar.
Kita bisa mengubah function total dengan menggunakan kata kunci return. Jadi function ini tidak langsung menampilkan hasil ke layar, melainkan mengembalikan hasilnya ke pemanggil function. Nantinya si pemanggil function lah yang menentukan hasilnya hendak digunakan untuk apa. Caranya? Kita ganti kata echo menjadi return. Kita hilangkan tambahan PHP_EOL.
Kalau kita jalankan, sekarang malah tidak ada tulisan apa-apa ya. Hal ini disebabkan karena hasil perhitungan di dalam function sudah tidak ditampilkan ke layar lagi, melainkan dikembalikan ke pemanggil function. Sedangkan si pemanggil function tidak menggunakan hasilnya. Untuk menggunakan hasil perhitungan, biasanya ditampung terlebih dahulu ke variable. Misalkan kita buat variable $result untuk menampung hasil dari function. Kemudian nilai dari variable $result bisa kita tampilkan ke layar, baik menggunakan perintah echo, var_dump maupun perintah lainnya. Kita coba menggunakan var_dump ya. Sekarang yang tampil di layar adalah tipe data integer, dengan nilai 3.
Sekarang perhatikan lagi ya. Pada parameter function, kita bisa mengatur agar parameter harus menggunakan tipe data integer. Nah, untuk return value, kita juga bisa mengatur tipe datanya. Caranya? Setelah tanda kurung, kita tambahkan tanda :, diikuti oleh tipe data yang dihasilkan oleh function. Misalkan pada function kita tambahkan : int.
Kalau kita coba jalankan, sekilas hasilnya tetap sama persis ya. Namun sekarang function kita diharuskan menghasilkan nilai yang tipenya integer. Kalau kita coba ganti bagian returnnya menjadi mengembalikan string ‘abc’. Pertama PHP mencoba untuk melakukan konversi dari string ‘abc’ menjadi integer. Namun berhubung tidak bisa, maka PHP mengeluarkan pesan Fatal Error.
Sedangkan kalau kita ganti string ‘abc’ menjadi string ‘1’. Maka kita mendapatkan hasil yang berupa integer 1. Karena tipe datanya secara otomatis diubah oleh PHP.
Kita juga bisa menggunakan union types pada return. Sebagai contoh, kita ubah tipe data parameter menjadi int|float. Kemudian tipe data kembaliannya juga kita ubah menjadi int|float.
Sekarang kita coba. Kalau kita memanggil function dengan menggunakan argument 1 dan 2, maka kita mendapatkan hasil int(3). Namun kalau kita ubah argument pertamanya menjadi float, misalnya 1.5. Maka kita mendapatkan hasil float(3.5). Jadi function kita menjadi bisa fleksibel diantara menggunakan tipe data int atau float.
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.