mengenal fonction dalam php

Function dalam PHP adalah salah satu fitur yang relatif penting dalam pembuatan website, terutama website berbasis aplikasi (aplikasi web). Fungsi ini akan sangat membantu dan bermanfaat pada saat membuat blok program atau script yang memerlukan perintah berulang dengan mengganti nilai ataupun tidak. Contoh kasus ketika kita memerlukan function dalam PHP ini adalah: ketika di halaman web memerlukan proses dengan formula atau format yang sama secara berulang-ulang, membuat blok halaman, dsb.
Fungsi ini berisi sekumpulan perintah program, bisa berisi argumen if, pengulangan, variable, yang dapat menerima inputan berupa variable berisi nilai kemudian mengolah nilai tersebut sesuai dengan kebutuhan. Bentuk umum dalam membuat fungsi adalah seperti ini
 function namafungsi(parameter1, parameter2, ... parameter n ){
       pernyataan berupa perintah operasi program;
       bisa menghasilkan output, bisa juga menjalankan perintah atau script;
 } 
Contoh implementasinya seperti di bawah ini
  1. <?php
  2. // pertama kita terlebih dahulu mendefinisikaan fungsinya,
  3. // kemudian mengisi fungsi tersebut dengan sederetan perintah
  4. function test1(){
  5.  echo "Contoh menggunakan Fungsi 1";
  6. }
  7. function test2(){
  8.  return "Contoh menggunakan Fungsi 2";
  9. }
  10. // untuk dapat menggunakan fungsi yang telah dibuat,
  11. // perlu pemanggilan nama fungsinya.
  12. test1();
  13. echo test2();
  14. ?>
Pada contoh di atas saya memberikan 2 buah fungsi PHP, yakni test1() dan test2(). Keduanya sama-sama fungsi hanya berbeda hasil akhirnya saja. Untuk contoh pertama, fungsi test1(), ketika dijalankan dia akan langsung menjalankan script PHP, yakni echo "Contoh menggunakan Fungsi 1";. Jadi untuk menggunakan fungsi yang menjalankan script, cukup memanggil nama fungsi tersebut saja. Contoh pertama ini adalah contoh fungsi yang hasilnya menjalankan perintah atau statement atau script. Adapun untuk contoh kedua, test2(), dia hasilnya hanya akan mengembalikan perintah atau nilai. Jadi ketika dipanggil langsung dia tidak akan menjalankan apa-apa, karena fungsi tersebut akan bekerja hampir sama dengan variabel. Bedanya, variabel hanya menampung sebuah nilai, sedangkan fungsi dia mampu melakukan proses dengan inputan nilai atau parameter dinamis yang fleksibel.

Menggunakan parameter dalam fungsi

Parameter mewakili variable yang nilainya akan diolah didalam perintah fungsi. Untuk menggunakan parameter pada fungsi PHP, contohnya adalah seperti ini :
  1. <?php
  2. function test($nilai){
  3.  echo "Berat badan anda adalah $nilai";
  4. }
  5. $beratbadan = 69 ;
  6. test($beratbadan);
  7. ?>
Silahkan lihat hasilnya di browser dengan parameter dalam fungsi yang dapat Anda oleh sendiri, dan dipastikan coding jauh lebih cepat ketimbang memanggil ulang perintah tanpa menggunakan fungsi. Contoh lain menggunakan parameter :
  1. <?php
  2. function penjumlahan($nilai1, $nilai2){
  3.  $total = $nilai1+$nilai2;
  4.  echo "$nilai1 + $nilai2 = $total";
  5. }
  6. penjumlahan(31,7);
  7. ?>
Dan bila dijalankan di browser hasilnya adalah:
31 + 7 = 38

Mengembalikan Nilai Fungsi

Seperti telah dijelaskan sebelumnya, bahwa fungsi dapat menjalankan perintah maupun mengembalikan nilai. Mengembalikan nilai fungsi dilakukan jika Anda menginginkan nilai dari fungsi tersebut diolah dalam suatu variable tertentu. Nah biasanya nilai dalam variable nantinya akan digunakan oleh fungsi yang lain. Untuk mengembalikan nilai fungsi, digunakan suatu fungsi return. Contoh implementasi lebih realnya dapat dilihat pada contoh di bawah ini
  1. <?php
  2. function penjumlahan($nilai1, $nilai2){
  3.  $total = $nilai1+$nilai2;
  4.  return $total;
  5. }
  6. $jumlah15plus50 = penjumlahan(15,50);
  7. echo $jumlah15plus50;
  8. ?>
Fungsi penjumlahan tersebut akan mengembalikan nilai dari penjumlahan antara $nilai1 dan $nilai2. Sehingga nilai dari fungsi dapat diimplementasikan sebagai nilai dari suatu variable $jumlah15plus50. Dan hasil akhirnya adalah nilai si fungsi di ambil dari nilai return fungsi tersebut. Sehingga nilai dari fungsi tersebut dapat dimanfaatkan lagi untuk suatu kebutuhan lainnya.

Parameter Opsional

Disamping penjelasan di atas, saya juga akan mencoba berbagi trik mengenal parameter dalam fungsi PHP, yakni parameter opsional dan parameter default.
Maksud parameter opsional di sini adalah ketika memanggil sebuah fungsi ketika diberikan parameter dan tidak diberikan parameter dia akan menghasilkan nilai atau output yang berbeda. Sebagai contoh: echo date('d/m/Y'); akan berbeda hasil dengan echo date('d/m/Y', 1351616400);. Silahkan coba hasilnya, kalo berdasarkan hasil test saya seperti di bawah ini
25/08/2012
31/10/2012
  1. <?php
  2. echo date('d/m/Y');
  3. echo "<br>";
  4. echo date('d/m/Y', 1351616400);
  5. ?>
Sekarang mari kita bikin contoh versi saya pribadi, yang mudah-mudahan bermanfaat juga buat sahabat AJN semuanya
  1. <?php
  2. function getHari($tgl=null){
  3.  if(preg_match("/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/", $tgl))
  4.    $tgl = $tgl;
  5.  else
  6.    $tgl = date('Y-m-d');
  7.  $days = array("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jum'at", "Sabtu");
  8.  $h = date("w", strtotime($tgl));
  9.  $hari = $days[$h];
  10.  rerurn $hari;
  11. }
  12. ?>
Penjelasan
Baris 2: function getHari($tgl=null){ memberikan default nilai pada perameter (boleh tidak diisi, karena jika tidak diisi dianggap nilainya null)
Baris 3: if(preg_match("/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/", $tgl)) yang dimaksudkan untuk mengecek bahwa input yang dimasukkan di parameter nilai harus memiliki pola yyyy-mm-dd atay yyyy-m-d (bulan dan tanggal boleh satu digit tanpa diikuti 0)
Baris 3 sampai 6: untuk mengecek, jika parameter $tgl diisi dan sesuai format tanggal maka paramater $tgl mengambil nilai dari inputan parameter, jika tidak sesuai format atau tidak diisi maka mengambil tanggal hari ini
Baris 7: $days = array("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jum'at", "Sabtu"); untuk menampung daftar nama hari (0=minggu, 6=sabtu)
Baris 8: $h = date("w", strtotime($tgl)); untuk mengambil angka hari sesuai tanggal yang diinput (0=minggu, 6=sabtu)
Baris 9: $hari = $days[$h]; untuk mengambil nama hari dengan nomor array angka hari
Yuk kita coba!
  1. <?php
  2. echo getHari(); // mengambil hari ini: Sabtu
  3. echo getHari('2012-02-03'); // mengambil hari tgl 3 Feb 2012: Jum'at
  4. echo getHari('2012-1-2'); // mengambil hari tgl 2 Jan 2012: Senin
  5. echo getHari('2012/02/03'); // format error, jadi mengambil hari ini: Senin
  6. ?>

URL Singkat: http://ajn8.tk/function-php (akses langsung halaman ini)

No comments: