Fungsi pada PHP


06/10/2016 14:50:56 323

PHP telah menyediakan banyak fungsi-fungsi yang dapat digunakan untuk membuat aplikasi web menjadi lebih mudah. Namun, kadang developer ingin membuat fungsi yang lebih spesifik, sesuai dengan aplikasi yang akan dibangun. Untuk membuat sebuah fungsi dapat menggunakan pola sebagai berikut:

function nama_fungsi($parameter) {
    // Perintah yang dijalankan oleh sebuah fungsi.
}

sedangkan untuk menggunakan fungsi seperti diatas ialah sebagai berikut:

nama_fungsi($parameter);

Berikut ialah sebuah fungsi untuk mengecek apakah suatu nilai habis dibagi 3 dan 4 :

// MENDEFINISIKAN FUNGSI
function cekNilai($nilai) {
    if($nilai % 3 == 0 && $nilai % 4 ==0) {
        echo "Nilai $nilai habis dibagi 3 dan 4";
        }else{
        echo "Nilai $nilai TIDAK habis dibagi 3 dan 4";
    }
}

// MENGGUNAKAN FUNGSI
cekNilai(12);
// Output: Nilai 12 habis dibagi 3 dan 4

cekNilai(8);
//Output: Nilai 8 TIDAK habis dibagi 3 dan 4

Fungsi dengan Nilai Balik (return Value)

Fungsi seperti diatas akan mengeluarkan hasil ketika digunakan. Namun, kadang kita ingin membuat sebuah fungsi yang akan digunakan untuk diinputkan kefungsi atau proses yang lain, fungsi yang seperti ini disebut dengan fungsi dengan nilai balik atau return value. Berikut ialah contoh fungsinya:

//DEFINISI FUNGSI
function cekUsernameAndPassword($username, $password) {
    if($username == "kaltim" && $password == "maju123") {
        return true;
    } else {
        return false;
    }
}

// PENGGUNAAN FUNGSI
$username = "timur";
$password  = "angsa";

if($cekUsernameAndPassword($username, $password) == true){
    echo "Anda Berhasil Login";
}else{
    echo "Username dan Password yang anda masukan salah!";
}

Scope dan Global Variabel pada Fungsi

Variabel dari suatu fungsi bersifat local, artinya variabel tersebut hanya digunakan didalam fungsi tersebut, seperti variabel $a pada fungsi1() pada kode dibawah ini. Namun, kadang developer ingin suatu fungsi dapat mengakses variabel yang didefinisikan diluar fungsi, untuk kita dapat mendefinisikan variabel tersebut agar dapat diakses dari dalam fungsi dengan menggunakan keyword globalseperti kode fungsi2() berikut ini.


function fungsi1() { $a = 1; $b = 2; echo $a + $b; } $a = 2; $c = 0; function fungsi2() { global $a, $c; $c = $a * $a; } echo $c; // Output: 4

Paremeter pass by Reference

Suatu variabel yang diberikan sebagai inputan parameter dari suatu fungsi akan diproses didalam suatu fungsi tersebut. Namun, nilai variabel tersebut tetap seperti pada fungsi1 pada kode dibawah. Untuk merubah suatu nilai dari variabel didalam suatu fungsi, kita dapat memberikan variabel tersebut sebagai parameter referensi atau disebut dengan passing by reference pada suatu fungsi dengan menggunakan keyword & seperti pada contoh kode fungsi2 berikut:

$a = 3;
function fungsi1($var) {
    $var = $var *10;
}

fungsi1($a);
echo $a; // Ouput: 3

// Menggunakan pass by reference

function fungsi2(&$var) {
    $var = $var * 20;
}

fungsi2($a);
echo $a; // Ouput: 30