Tutorial : Belajar Membuat Fungsi PHP (PHP function)

Posted by & filed under , , .

Oke, ini adalah tutorial ketiga dari seri belajar membuat website meggunakan PHP bagi pemula dalam blog ini. Jika di tutorial sebelumnya kita sudah belajar bagaimana menggunakan script PHP dan mengenal variabel PHP, kali ini kita akan belajar membuat fungsi dalam PHP (PHP function). Masih fungsi sederhana sih, yang penting adalah pemahaman anda dalam menggunakan PHP sebelum belajar lebih lanjut dengan menggunakan database. Jika anda masih pemula, jangan lewatkan artikel ini. Memang contoh fungsi yang akan kita buat terlihat kurang bermanfaat, tapi sekali lagi tulisan ini untuk mengajarkan anda prinsip dasar membuat fungsi dan bagaimana penggunaannya agar nanti dapat digunakan ketika anda mulai membangun sistem website yang kompleks.

Pada dasarnya fungsi PHP berguna untuk mempermudah perkerjaan dimana sebuah fungsi yang kita buat dapat digunakan secara berulang-ulang.

Oya, fungsi yang akan kita bahas disini adalah fungsi yang kita buat sendiri sesuai dengan kebutuhan kita, tapi pada dasarnya PHP sendiri memiliki ratusan fungsi yang siap pakai atau biasa disebut built in php function seperti fungsi date()  yang sudah kita bahas sebelumnya untuk menampilkan tanggal atau beberapa contoh fungsi lain seperti htmlspecialchars(), implode(), explode(), addslashes() dan masih banyak lagi. Dalam kesempatan lain akan kita bahas kegunaan fungsi-fungsi ini satu persatu. Sekarang mari kita kembali ke cara membuat fungsi PHP sendiri.

Yang perlu anda ketahui mengenai fungsi antara lain :

  1. Script-script yang ada di dalam fungsi tidak akan dieksekusi atau dijalankan sampai anda memanggil fungsi tersebut.
  2. Setiap fungsi harus diberi nama, penamaan fungsi dapat anda lakukan sesuka hati tapi sebaiknya nama fungsi menggambarkan apa yang akan dilakukan oleh fungsi tersebut, misalnya jika fungsi di buat untuk mengambil data tanggal lahir anggota, anda bisa namakan “get_birthdate” atau “ambil_tg_lahir”.
  3. Nama fungsi hanya boleh menggunakan karakter huruf dan tanda underscore (_) dan tidak boleh menggunakan spasi.

Sintaks fungsi adalah sebagai berikut :

function namaFungsi() {
 }

Penjelasannya :

Sebuah fungsi harus selalu dimulai dengan kata “function” kemudian diikuti dengan nama fungsi (namaFungsi) dan tanda buka serta tutup kurung, kemudian buka kurung kurawal dan tutup kurung kurawal. Nah script yang akan dieksekusi akan di tulis di dalam kurung kurawal.

Tanda buka dan tutup kurung bisa kosong, dan bisa juga diisi parameter atau variabel boleh hanya 1 atau lebih, contohnya

function namaFungsi($parameter1,$parameter2) {
 }

Oke, mari sekarang kita langsung praktek membuat fungsi tanpa parameter. Misalnya kita akan membuat fungsi untuk menulis nama.

function tulis_nama() {
echo "Nama saya Fandhie";
}

Nah fungsi diatas bernama tulis_nama() tanpa parameter.  Script di dalam fungsi memerintahkan untuk mencetak (echo) string “Nama saya Fandhie” , mari kita aplikasikan ke halaman website. Buatlah halaman php dengan nama index.php kemudian ketik kode-kode berikut :

<?php
 function tulis_nama() {
 echo "Nama saya Fandhie";
 }
 ?>
<html>
 <head>
 <title>Belajar Fungsi</title>
 </head>
 <body>
 <?php tulis_nama();?>
 </body>
 </html>

Simpan halaman php anda kemudian buka menggunakan browser. See? pada browser akan tampil tulisan Nama saya Fandhie.  Script <?php tulis_nama();?> adalah untuk memanggil fungsi tulis_nama(), dan karena fungsi ini dipanggil, maka script di dalam fungsi yaitu echo “Nama saya Fandhie”; akan dieksekusi. Mudah dipahami kan?

Coba cara berikut :

<?php
 function tulis_nama() {
 $nama = "Nama saya Fandhie";
return $nama;
 }
 ?>
<html>
 <head>
 <title>Belajar Fungsi</title>
 </head>
 <body>
 <?php echo tulis_nama();?>
 </body>
 </html>

Simpan halaman php anda kemudian refresh browser. Sama aja kan hasil tampilannya? Berikut penjelasannya :

dalam fungsi tulis_nama() , pertama kita mendefinisikan varibel $nama dan beri nilai string “Nama saya Fandhie”;   kemudian return $nama , artinya nilai yang dihasilkan (return) oleh fungsi ini adalah variabel $nama;

Cara memanggil fungsi menjadi <?php echo tulis_nama();?>, ditambah echo karena kita harus memerintahkan untuk mencetak variabel $nama yang dihasilkan oleh fungsi tulis_nama(). Tanpa perintah echo, tidak akan tampil apa-apa dihalam website. Berbeda dengan fungsi sebelumnya dimana di dalam fungsi itu sendiri sudah memberikan perintah echo. Jelas bukan?

Ayo kita buat sedikit kompleks dengan script berikut. Silahkan tuliskan dalam file php anda dan simpan.

<?php
 function tulis_nama() {
 $first_name = "Fandhie";
 $last_name = "Deeng";
$nama = $first_name." ".$last_name;
return $nama;
 }
 ?>
<html>
 <head>
 <title>Belajar Fungsi</title>
 </head>
 <body>
 <?php echo tulis_nama();?>
 </body>
 </html>

Sekarang buka di browser, maka akan tampil Fandhie Deeng di halaman browser anda.

Penjelasannya :

Di dalam fungsi tulis_nama(), kita menetapkan 3 variable yaitu :

varibel $first_name , variabel $last_name dan variabel $nama, dimana varibel $nama mengambil nilai variabel $first_name , $last_name dan disisipkan string spasi diantaranya. Kemudian sebagai hasil (return) fungsi adalah variabel $nama, sehinggal ketika kita memanggil fungsi tulis_nama() dan di echo maka variabel $nama yang akan dicetak.

Oke, kita coba membuat perhitungan matematika. Sebagai berikut :

<?php
 function hitung() {
 $nilai_a = 5;
 $nilai_b = 10;
 $nilai_c = 3;
$hasil = ($nilai_a*$nilai_b)-$nilai_c;
return $hasil;
 }
 ?>
<html>
 <head>
 <title>Belajar Fungsi</title>
 </head>
 <body>
 <?php echo hitung();?>
 </body>
 </html>

Simpan kemudian buka dalam browser, akan tampil nilai 47, karena fungsi hitung melakukan perkalian  variabel $nilai_a dengan $nilai_b kemudian dikurangi $nilai_c .

Oke, harusnya anda sudah memahami, sekarang kita coba modifikasi fungsi hitung() menjadi fungsi dengan parameter

<?php
function hitung($nilai_c) {
 $nilai_a = 5;
 $nilai_b = 10;

 $hasil = ($nilai_a*$nilai_b)-$nilai_c;

 return $hasil;
}
?>
<html>
<head>
<title>Belajar Fungsi</title>
</head>
<body>
<?php echo hitung(3);?>
</body>
</html>

Simpan dan buka dalam browser, hasilnya sama 47 kan yah? Nah di fungsi hitung($nilai_c) kali ini ada parameter $nilai_c, jadi pada saat kita memanggil fungsi hitung(3), artinya angka 3 adalah nilai variabel $nilai_c. Silahkan coba untuk mengganti parameter 3 dengan angka lainnya untuk melihat perubahan hasil perhitungan yang terjadi.

Ayo kita coba dengan fungsi yang lebih kompleks sebagai berikut :

<?php
function hitung($nilai) {
 $i = 0;
 for($i=0;$i<$nilai;$i++) {
 echo $i*$nilai."<br />";
 }
}
?>
<html>
<head>
<title>Belajar Fungsi</title>
</head>
<body>
<?php echo hitung(5);?>
</body>
</html>

Simpan dan buka di browser, akan menampilkan deret angka 0 sampai 20 dengan kelipatan 5 bukan?

Penjelasannya :

Pada fungsi hitung(5) kita mengirimkan nilai 5 sebagai nilai variabel $nilai dalam hitung($nilai) kemudian dalam fungsi kita menetapkan varibel $i = 0;

Selanjutnya kita melakukan looping for($i=0;$<$nilai;$i++;} {…..}  Agar lebih memahami coba anda rubah nilai parameter dengan beberapa angka yang berbeda misalnya hitung(1), hitung(2), hitung(10) dan seterusnya. Kemudian cobalah ubah perintah looping menjadi for($i=2;$<$nilai;$i++;} {…..}  atau for($i=0;$<=$nilai;$i++;} {…..} dan seterusnya, maka output yang dihasilkan akan berbeda-beda dan dapat membantu pemahaman anda.

Selanjutnya mari kita coba membuat fungsi dengan 2 parameter (anda juga dapat mencoba dengan 3 atau lebih parameter kok).

<?php
function hitung($nilai_a, $nilai_b) {
 if(($nilai_a*$nilai_b) % 2 ==0) 
 {$hasil = "Bilangan Genap";}
 else 
 {$hasil= "Bilangan Ganjil";}

 return $hasil;
}
?>
<html>
<head>
<title>Belajar Fungsi</title>
</head>
<body>
<p><?php echo hitung(5,2);?></p>
<p><?php echo hitung(3,2);?></p>
<p><?php echo hitung(1,3);?></p>
<p><?php echo hitung(7,5);?></p>
<p><?php echo hitung(5,11);?></p>
</body>
</html>

Simpan script diatas dan buka di browser. bagaimana hasilnya?  Ya betul, fungsi diatas untuk menguji hasil perkalian 2 parameter yang dikirim apakah bilangan ganjil atau bilangan genap.  Misalnya <?php echo hitung(5,2);?> karena 5 dikalikan 2 sama dengan 10, hasilnya adalah Bilangan Genap.

Semoga anda paham mengenai fungsi PHP dan sampai jumpa di tutorial dasar-dasar PHP selanjutnya.

17 Responses to “Tutorial : Belajar Membuat Fungsi PHP (PHP function)”

  1. Juraganjr

    Ijin nyimak, artikel tutorial mudah dipahami sangat bermanfaat. Lanjoetgan.. makasih gan

  2. een

    Form Input

    Nama :
    NIS :
    Kelas :

  3. Majuin

    mantep gan sangat bermanfaat thx ya gan

  4. unived

    Mantab kang, tapi semakin kebawah semakin stresss

  5. eboot

    ok sip, penjelasan nya sangat mudah di cerna
    thanks om

  6. Gani

    Tutorial yang bagus broo..Simple dan mudah di mengerti…

  7. fondra

    tutorialnya sangat bagus mudah di pahami

  8. Johan

    Mas saya ada kode

    function ahp_uji_konsistensi($matrik, $eigen){
    for($i=0;$i<count($matrik);$i++){
    $nilai=0;
    for($ii=0;$ii<count($matrik);$ii++){
    $nilai = $nilai + ($matrik[$i][$ii] * $eigen[$ii]);
    }
    $matrik_eigen[$i] = $nilai;
    }
    $nilai=0;
    for($i=0;$i<count($matrik);$i++){
    $nilai = $nilai + ($matrik_eigen[$i] / $eigen[$i]);
    }
    $t = $nilai / count($matrik);
    $ci = ($t – count($matrik)) / (count($matrik)-1);
    $ri = array(0,0,0.58, 0.9, 1.12, 1.24, 1.32, 1.41, 1.45, 1.49, 1.51, 1.48, 1.56, 1.57, 1.59);
    $cr = $ci / $ri[count($matrik)];

    if($cr <= 0.1){
    return true;
    }else{
    return false;
    }
    }

    Saya mau manggil variable $cr pada function tersebut. Saya echo ahp_uji_konsistensi($matrik, $eigen), yang muncul kok bukan yang saya maksud.

    Thanks

  9. naufal

    mas mw tanya, gmna ya cara memanggil fungsi di atas, klo text field yg menentukan angka.? msh new bie :D, mohon bantuanya

  10. Pyepit Rinekso A

    kalau membuat inisialisasi huruf konsonan atau vokal dengan php bagaimana?
    misalnya inputan “saya makan”
    hasilnya
    1. saya = kvkv
    2. makan = kvkvk
    ket:
    k = konsonan
    v = vokal
    terimakasi

  11. Sopar Sihombing

    terima kasih,gan..sangat bermanfaat.. Tuhan berkati.

  12. fauzi utama

    sangat membantu saya dalam mengenal PHP, terimakasih banyak gan, saya doakan ditambah ilmunya

  13. Azis Hapidin

    Makasih ilmunya gan. Oh iya, kira-kira jumlah parameter itu ada batasnya nggak?

  14. doni hardiyawan

    belum paham

  15. fandhie

    @Azis Hapidin : Rasanya tidak ada batasan jumlah parameter, tapi sebaiknya dalam 1 fungsi cukup 2-3 parameter saja, kalau membutuhkan lebih parameter sebaiknya menggunakan object (akan dibahas nanti)

  16. fandhie

    @Pyepit : dicoba aja ini

    < ?php $kalimat = "Saya Makan"; $vokal = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U"); $gantikonsonan = preg_replace('/[^aeiou]/','k',$kalimat); $gantivokal = str_replace($vokal, "v", $gantikonsonan); echo $gantivokal; ?>

  17. fandhie

    @Johan : karena hasil dari fungsi anda adalah nilai false dan true berdasarkan nilai $cr. kalau mau panggil nilai $cr langsung return $cr; aja

Leave a Reply

Your email address will not be published. Required fields are marked *