Tutorial Belajar PHP Part 43: Pengertian Default Parameter Function

Melanjutkan seri materi tentang function PHP, dalam tutorial kali ini kita akan bahas pengertian dan cara membuat default parameter.


Pengertian Default Parameter PHP

Default Parameter adalah istilah untuk parameter yang memiliki nilai awal atau nilai default.

Sebagai contoh, misalkan kita membuat fungsi sederhana: tambah(). Fungsi ini butuh 2 parameter yang masing-masing untuk nilai yang ingin ditambahkan. Berikut contoh kode programnya:

<?php
  function tambah($a, $b) {
    return $a + $b;
  }
  
  echo tambah(2,3);    // 5
  echo tambah(3,4);    // 7
?>

Dengan fitur default parameter, kita bisa memanggil fungsi tambah() hanya dengan 1 nilai input, atau bahkan tidak perlu nilai input sama sekali. Berikut perubahannya:

<?php
  function tambah($a, $b = 2) {
    return $a + $b;
  }
  
  echo tambah(2);      // 4
  echo tambah(10);     // 12
  echo tambah(4, 4);    // 8
?>

Perhatikan di akhir baris 2, saya menulis parameter kedua menjadi $b = 2. Inilah yang dimaksud dengan default parameter. Jika parameter $b tidak ditulis pada saat pemanggilan fungsi, nilai 2 akan menjadi nilai awal.

Dengan nilai default, kita bisa rancang fungsi dengan parameter yang bersifat opsional. Parameter tersebut bisa diisi saat pemanggilan, atau boleh juga diabaikan.

Ini membuat fungsi lebih fleksibel karena pada saat pemanggilan, kita tidak harus menginputkan seluruh parameter, tetapi apa yang dianggap perlu saja.


Cara Penulisan Default Parameter PHP

Untuk membuat default parameter, kita hanya perlu memberi nilai awal saat pendefinisian parameter. Berikut format dasar penulisan default parameter dalam bahasa PHP:

function foo ($parameter1 = nilai_default1, $parameter2 = nilai_default2) {
   // kode program function ada disini...
   return nilai_akhir;
}
  • foo merupakan nama fungsi yang akan dibuat.
  • $parameter1 dan  $parameter2 adalah variabel untuk menampung nilai input fungsi.
  • nilai_default1 dan nilai_default2 adalah nilai default untuk parameter. Nilai ini akan dipakai jika saat pemanggilan fungsi nilai parameter tidak diisi.
  • return nilai_akhir adalah instruksi untuk mengembalikan hasil pemrosesan fungsi.

Agar lebih mudah memahami konsep default parameter, saya akan modifikasi fungsi pangkat() yang pernah kita rancang pada tutorial sebelumnya tentang tipe data argument. Silahkan pelajari sejenak kode program berikut:

<?php
  function pangkat($nilai, $pangkat=2) {
    $hasil = 1;
    for ($i=1; $i<=$pangkat; $i++) {
      $hasil = $hasil * $nilai;
    }
    return $hasil;
  }
  
  //Test beberapa kasus input untuk fungsi pangkat()
  echo "pangkat(5) = ".pangkat(5);           echo "<br>";
  echo "pangkat(3) = ".pangkat(3);           echo "<br>";
  echo "pangkat(2,8) = ".pangkat(2,8);       echo "<br>";
  echo "pangkat(3.5,3) = ".pangkat(3.5,3);   echo "<br>";
?>

Hasil kode program:

Tutorial Belajar PHP - Cara Membuat Default Parameter Function

Dalam kode ini saya tidak menggunakan fitur cek tipe data agar contoh program lebih sederhana.

Pada saat mendefinisikan fungsi pangkat(), terdapat tambahan angka 2 sebagai default parameter untuk parameter $pangkat. Maka, jika fungsi pangkat() dipanggil tanpa parameter kedua, $pangkat akan diisi angka 2.

Sebagai contoh, jika dipanggil pangkat(5), akan sama artinya dengan pangkat(5,2). Namun jika dipanggil pangkat(2,8), maka nilai parameter $pangkat akan berisi 8, bukan 2.


Penempatan Default Parameter

Sebuah function bisa saja punya banyak parameter. Sebagai syarat tambahan, default parameter harus diletakkan di akhir pendefinisian parameter.

Dengan kata lain, setelah pendefinisian parameter dengan nilai default, tidak boleh ada parameter reguler sesudahnya. Contoh pendefinisian fungsi berikut ini akan menyebabkan error di PHP:

function tambah($nilai1, $nilai2=3, $nilai3)

Error terjadi karena default parameter diletakkan sebelum parameter biasa. Contoh diatas seharusnya di tulis sebagai:

function tambah($nilai1, $nilai2, $nilai3=3)

Atau:

function tambah($nilai1, $nilai2=3, $nilai3=3)

Pada kedua contoh ini, default parameter berada setelah pendefinisian parameter biasa.


Sepanjang tutorial ini kita telah membahas pengertian dan cara penggunaan default parameter untuk membuat fungsi yang lebih fleksibel,

Ketika menghadapi kasus yang cukup rumit, PHP ternyata juga mengizinkan kita membuat jumlah parameter yang tidak terbatas. Inilah materi kita dalam tutorial PHP selanjutnya: pengertian variable parameter PHP.

17 Comments

  1. Rochafi
    27 Apr 16
    • Andre
      28 Apr 16
  2. Bosfarnet
    03 May 16
    • Andre
      03 May 16
  3. Winda
    10 Dec 16
    • Andre
      11 Dec 16
  4. telolet
    22 Mar 17
  5. andri
    24 Feb 18
    • Andre
      25 Feb 18
      • devit setyono
        22 May 18
  6. Aono
    29 Jun 18
    • Andre
      30 Jun 18
      • Aono
        01 Jul 18
        • Andre
          01 Jul 18
  7. Falevi Firgi
    25 Feb 19
    • Andre
      26 Feb 19

Add Comment