Belajar PHP: Memahami Prosedur dan Fungsi
Banyak fungsi build-in dari php yang sering kita gunakan, seperti print()
, print_r()
, unset()
, dll. Selain fungsi-fungsi tersebut, kita juga dapat membuat fungsi
sendiri sesuai kebutuhan.
Fungsi adalah sekumpulan instruksi yang dibungkus dalam sebuah blok. Fungsi dapat digunakan ulang tanpa harus menulis ulang instruksi di dalamnya.
Fungsi pada PHP dapat dibuat dengan kata kunci function
, lalu diikuti dengan nama fungsinya.
Contoh:
function namaFungsi(){
//...
}
Kode instruksi dapat di tulis di dalam kurung kurawal ({...}
).
Contoh:
function perkenalan(){
echo "Assalamulaikmu, ";
echo "Perkenalkan, nama saya Ardianta<br/>";
echo "Senang berkenalan dengan anda<br/>";
}
Fungsi yang sudah dibuat tidak akan menghasilkan apapun kalau tidak dipanggil. Kita dapat memanggil fungsi dengan menuliskan namanya.
Contoh:
perknalan();
Jadi, kode lengkapnya seperti ini:
<?php
// mmbuat fungsi
function perkenalan(){
echo "Assalamulaikmu, ";
echo "Perkenalkan, nama saya Ardianta<br/>";
echo "Senang berkenalan dengan anda<br/>";
}
// memanggil fungsi yang sudah dibuat
perkenalan();
echo "<hr>";
// memanggilnya lagi
perkenalan();
?>
hasilnya:
Fungsi dengan Parameter
Supaya instruksi yang di dalam fungsi lebih dinamis, kita dapat menggunakan parameter untuk memasukkan sebuah nilai ke dalam fungsi. Nilai tersebut akan diolah di dalam fungsi.
Misalkan, pada contoh fungsi yang tadi, tidak mungkin nama yang dicetak adalah ardianta saja dan salam yang dipakai tidak selalu assalamualaikum. Maka, kita dapat menambahkan parameter menjadi seperti ini:
<?php
// mmbuat fungsi
function perkenalan($nama, $salam){
echo $salam.", ";
echo "Perkenalkan, nama saya ".$nama."<br/>";
echo "Senang berkenalan dengan anda<br/>";
}
// memanggil fungsi yang sudah dibuat
perkenalan("Muhardian", "Hi");
echo "<hr>";
$saya = "Indry";
$ucapanSalam = "Selamat pagi";
// memanggilnya lagi
perkenalan($saya, $ucapanSalam);
?>
Hasilnya:
Paramter dengan Nilai Default
Nilai default dapat kita berikan di parameter. Nilai default berfungsi untuk mengisi nilai sebuah parameter, kalau parameter tersebut tidak diisi nilainya.
Misalnya: saya lupa mengisi parameter salam, maka program akan error. Oleh karena itu, kita perlu memberikan nilai default supaya tidak error.
Contoh:
<?php
// mmbuat fungsi
function perkenalan($nama, $salam="Assalamualaikum"){
echo $salam.", ";
echo "Perkenalkan, nama saya ".$nama."<br/>";
echo "Senang berkenalan dengan anda<br/>";
}
// memanggil fungsi yang sudah dibuat
perkenalan("Muhardian", "Hi");
echo "<hr>";
$saya = "Indry";
$ucapanSalam = "Selamat pagi";
// memanggilnya lagi tanpa mengisi parameter salam
perkenalan($saya);
?>
Hasilnya:
Fungsi yang Megembalikan Nilai
Hasil pengolahan nilai dari fungsi mungkin saja kita butuhkan untuk pemrosesan berikutnya. Oleh karena itu, kita harus membuat fungsi yang dapat mengembalikan nilai.
Pengembalian nilai dalam fungsi dapat menggunakan kata kunci return
.
Contoh:
<?php
// membuat fungsi
function hitungUmur($thn_lahir, $thn_sekarang){
$umur = $thn_sekarang - $thn_lahir;
return $umur;
}
echo "Umur saya adalah ". hitungUmur(1994, 2015) ." tahun";
?>
Hasilnya:
Memangil Fungsi di dalam Fungsi
Fungsi yang sudah kita buat, dapat juga dipanggil di dalam fungsi lain.
Contoh:
<?php
// membuat fungsi
function hitungUmur($thn_lahir, $thn_sekarang){
$umur = $thn_sekarang - $thn_lahir;
return $umur;
}
function perkenalan($nama, $salam="Assalamualaikum"){
echo $salam.", ";
echo "Perkenalkan, nama saya ".$nama."<br/>";
// memanggil fungsi lain
echo "Saya berusia ". hitungUmur(1994, 2015) ." tahun<br/>";
echo "Senang berkenalan dengan anda<br/>";
}
// memanggil fungsi perkenalan
perkenalan("Ardianta");
?>
Hasilnya:
Fungsi rekursif
Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri. Fungsi ini biasanya digunakan untuk menyelesaikan masalah sepeti faktorial, bilangan fibbonaci, pemrograman dinamis, dll.
Contoh fungsi rekursif:
<?php
function faktorial($angka) {
if ($angka < 2) {
return 1;
} else {
// memanggil dirinya sendiri
return ($angka * faktorial($angka-1));
}
}
// memanggil fungsi
echo "faktorial 5 adalah " . faktorial(5);
?>
Hasilnya:
Apa Selanjutnya?
Sejauh ini, Kamu sudah belajar fungsi dan prosedur di PHP.
Selanjutnya silakan pelajari:
- Cara memproses input dari Form HTML dengan PHP