Alexandromeo Lawrence I'm an experienced SEO Specialist who can grow a website through organic channel. I'm also passionate about digital marketing and web development

Belajar PHP Part 10: Mengenal Function Pada PHP dan Fungsinya

4 min read

belajar function pada php

Jika sebelumnya, kita sudah belajar tentang perulangan pada PHP, sekarang saatnya kita belajar function. Function sangatlah diperlukan untuk membuat sebuah aplikasi. Tanpa function, aplikasi/website akan memiliki kode yang panjang.

Nah, itu berarti tujuan function adalah untuk mempersingkat penulisan kode sehingga lebih mudah dibaca dan dimainteance ke depannya. Ada 2 jenis function, yaitu:

  • Function yang sudah disediakan oleh bahasa pemrograman (dalam contoh ini PHP)
  • Function yang kita buat sendiri

Mengenal Function Pada PHP

Pembuatan function diikuti oleh tanda kurung buka dan kurung tutup dan diawali dengan keyword function. Nama functionnya pun bebas, asal tidak diawali dengan angka dan diisi dengan spasi. Contoh pembuatan function adalah seperti ini:

[php]
<?php
function sapa()
{
   echo "Halo. Apa kabar?";
}
[/php]

Nah, kita telah membuat sebuah function bernama sapa(). Jika Anda jalankan kode program di atas, maka tidak akan menampilkan apa-apa. Kenapa? Karena kita baru membuat function, belum memanggilnya.

Kita perlu memanggil function tersebut supaya dapat dieksekusi oleh program. Cara pemanggilannya tinggal dituliskan nama functionnya saja, seperti ini:

[php]sapa();[/php]

Jadi, sintaks lengkapnya menjadi seperti ini:

[php]
<?php
//membuat function
function sapa()
{
   echo "Halo. Apa kabar?";
}

//memanggil function
sapa();
[/php]

Untuk hasilnya, seperti ini:

membuat function di php

Jadi, ketika function dipanggil, program akan mengeksekusi semua kode yang ada di dalam kurung kurawal. Sekilas, hasil yang ditampilkan akan sama jika Anda menulis kode program seperti di bawah:

[php]
<?php
echo "Halo. Apa kabar?";
[/php]

Jika kode program masih singkat, Anda pasti belum menemukan perbedaan yang signifikan. Namun, coba amati function di bawah ini:

[php]
function perkenalan()
{
   echo "Nama: Alexandromeo";
   echo "<br/>";
   echo "Umur: 20 tahun";
   echo "<br/>";
   echo "Alamat: Wonosobo";
   echo "<hr/>";
}
[/php]

Untuk yang belum tahu <br/> dan <hr/>, berikut penjelasannya:

  • <br/> = Untuk membuat baris baru
  • <hr/> = Untuk membuat garis horizontal

Jika Anda belum paham HTML, Anda bisa coba baca panduan belajar HTML dasar yang telah saya sediakan.

Misalnya, Anda ingin melakukan perkenalan sebanyak 5 kali, berarti Anda menuliskan kode program di dalam perkenalan() sebanyak 3 kali. Tentunya, tidak efektif dong kalau kita menuliskan nama, umur, alamat berkali-kali.

Nah, function dapat digunakan berkali-kali tanpa perlu menulis ulang. Contoh penggunaannya seperti ini:

[php]
perkenalan();
perkenalan();
perkenalan();
[/php]

Dengan begitu,  Anda tidak perlu menuliskan echo “Nama: Alexandromeo” sebanyak 3 kali. Berikut hasilnya:

Manfaat function di php

Lalu, bagaimana caranya supaya dapat menampilkan nama, umur, dan alamat yang berbeda-beda? Jawabannya, dengan menggunakan parameter. Pembahasannya ada di bawah, ya.

Function dengan Parameter

Jika tadi kita hanya membuat function biasa yang sangat sederhana, sekarang coba kita tambahkan parameter. Tujuan dari parameter adalah supaya isi dari function bisa dinamis tergantung parameternya. Contoh penulisannya seperti ini:

[php]
&amp;lt;?php
function perkenalan($nama, $umur, $alamat)
{
   echo "Nama: ".$nama;
   echo "&amp;lt;br/&amp;gt;";
   echo "Umur: ".$umur;
   echo "&amp;lt;br/&amp;gt;";
   echo "Alamat: ".$alamat;
   echo "&amp;lt;hr/&amp;gt;";
}
[/php]

Nah, dengan begitu program akan menampilkan nama, umur, dan alamat sesuai dengan data saat function dipanggil. Contoh pemanggilannya seperti ini:

[php]
perkenalan("Alexandromeo", 20, "Wonosobo");
perkenalan("Agave", 21, "Jambi");
[/php]

Dengan begitu, hasilnya akan seperti ini:

membuat function dengan parameter di php

Tentunya, sudah terasa kan apa manfaat dari function? Jadi, intinya jika suatu kode akan ditulis lebih dari satu kali, lebih baik gunakan function supaya lebih cepat. Selain itu, lebih mudah juga ketika akan diubah. Contohnya:

[php]
function perkenalan($nama, $umur, $alamat)
{
   echo "Nams: ".$nama;
   echo "&amp;lt;br/&amp;gt;";
   echo "Umur: ".$umur;
   echo "&amp;lt;br/&amp;gt;";
   echo "Alamat: ".$alamat;
   echo "&amp;lt;hr/&amp;gt;";
}
[/php]

Misal, saya melakukan kesalahan (typo) ketika menuliskan Nama. Pada kode di atas penulisannya menjadi Nams. Jika kita menggunakan function, kita hanya mengganti 1 baris saja. Tapi, jika kita tidak menggunakan function, kita mengganti semua bagian yang typo. Tentunya, hal itu sangat melelahkan kan? Apalagi ketika aplikasi sudah besar.

Kita juga bisa kok memberikan nilai langsung pada parameternya, seperti ini:

[php]
function perkenalan($nama, $umur, $alamat="Semarang")
{
   echo "Nama: ".$nama;
   echo "&amp;lt;br/&amp;gt;";
   echo "Umur: ".$umur;
   echo "&amp;lt;br/&amp;gt;";
   echo "Alamat: ".$alamat;
   echo "&amp;lt;hr/&amp;gt;";
}
[/php]

Jadi, alamat yang akan ditampilkan adalah Semarang, jika parameter $alamat tidak diisi pada saat pemanggilan function. Contoh:

[php]
perkenalan("Alexandromeo", 20, "Wonosobo"); //alamatnya Wonosobo
perkenalan("Agave", 21); //karena tidak mengisi alamat, maka alamatnya Semarang
[/php]

Berikut hasilnya:

Fungsi dengan Parameter Default

Sekarang, sudah paham kan tentang function dengan parameter? Kalo sudah, sekarang kita coba menggunakan return.

Function dengan return

Return itu apa sih? Fungsinya apa? Jadi, return itu untuk mengembalikan nilai supaya nilai yang direturn dapat digunakan di luar function. Masih bingung ya? Coba ketik kode di bawah ini:

[php]
&amp;lt;?php
function penjumlahan($a, $b)
{
   $hasil = $a+$b;
}
[/php]

Bagaimana supaya kita dapat memanggil $hasil di luar penjumlahan? Misal, saya coba panggil seperti ini:

[php]penjumlahan(4, 5); //menjumlahkan 4 dan 5[/php]

atau

[php]echo penjumlahan(4,5);[/php]

Tidak muncul apa-apa. Padahal, kita berharap dapat memunculkan hasil penjumlahannya. Nah, solusinya gunakan return. Penulisan return seperti ini (walaupun ada cara lain):

[php]function penjumlahan($a, $b)
{
   $hasil = $a+$b;
   return $hasil;
}
[/php]

Jadi, return itu untuk memberikan nilai pada function yang dipanggil. Pada kasus di atas, sama saja memberikan nilai 9 untuk function penjumlahan(4, 5). Setelah diberikan return, maka function (dalam kasus ini) penjumlahan(4, 5) bisa diibaratkan sebagai variabel yang menampung nilai 4+5.

Karena ibaratnya dia variabel, maka pemanggilannya menggunakan echo. Contohnya seperti ini:

[php]echo "Hasil : ".penjumlahan(4, 5);[/php]

Taraaa. Anda bisa menjalankan programnya dan melihat hasil seperti ini:

membuat function dengan return

Penggunaan return tidak hanya untuk kasus seperti itu saja. Kita bisa gabungkan function dengan percabangan. Contoh:

[php]
&amp;lt;?php
function cek($bil)
{
   if($bil&amp;lt;0)
      return "Negatif";
   else if($bil&amp;gt;0)
      return "Positif";
   else
      return "Nol";
}
[/php]

Anda juga bisa memanggil function di dalam function lainnya.  Contoh:

[php]function getNama($name)
{
   return "Nama : ".$name."&amp;lt;br/&amp;gt;";
}

function getUmur($age)
{
   return "Umur : ".$age;
}

function perkenalan($nama, $umur)
{
   echo getNama($nama);
   echo getUmur($umur);
}

perkenalan("Alexandromeo", 20);
[/php]

Mungkin Anda bertanya, kenapa function getNama() memiliki parameter berbeda, yaitu $name dan $nama?  Itu bukan salah ketik. Memang diperbolehkan seperti itu karena itu hanya pemanggilan.

Yang tidak boleh itu ketika parameter pada function getNama($name) berbeda dengan isinya (statement). Statement adalah kode program yang berada di dalam kurung kurawal (di dalam function getNama($name)).

Oh iya, ada satu yang perlu Anda tahu, yaitu:

  • Jika tidak mengembalikan nilai (tidak ada return), maka namanya prosedur
  • Jika mengembalikan nilai (ada return), maka namanya fungsi

Rekursif

Anda tahu rekursif? Jika sebelumnya kita bahas memanggil function lain di dalam suatu function, maka rekursif adalah fungsi yang memanggil dirinya sendiri. Sebagai contoh, kita akan membuat fungsi untuk mencari nilai faktorial.

[php]&amp;lt;?php
function faktorial($bil)
{
   if($bil&amp;gt;1)
      return $bil*faktorial($bil-1);
   else
      return 1;
}

echo "Faktorial dari 4: ".faktorial(4);[/php]

Jadi, penjelasan dari kode program di atas yaitu jika parameter $bil bernilai lebih dari 1, maka dia akan mengembalikan nilai $bil dikali dengan faktorial($bil-1). Otomatis akan memanggil lagi function tersebut dengan nilai $bil-1.

Nah, seperti perulangan ya? Lalu, kapan berhentinya? Proses akan berhenti ketika masuk else, yaitu ketika $bil bernilai 1.

Itulah pembahasan mengenai function pada PHP. Function sangat diperlukan ketika akan membuat aplikasi. Jika aplikasi sudah sangat besar tentunya peranan function sangat penting. Selain itu, function juga dapat mempermudah programmer membaca kode program. Apabila ada yang ingin ditanyakan, jangan ragu untuk menanyakan melalui kolom komentar ya.

Panduan Sebelumnya: Foreach Pada PHP
Panduan Selanjutnya : Segera
Alexandromeo Lawrence I'm an experienced SEO Specialist who can grow a website through organic channel. I'm also passionate about digital marketing and web development