Monday, November 24, 2014

Tutorial PHP OOP Part 7 : Konstanta Pada Class

Konstanta adalah sebuah nilai tetap yang tidak berubah selama pemrograman. Kita bisa membuat konstanta pada class. Bentuk konstanta bukan seperti variabel yang diberi nilai dan tidak menggunakan tanda $ (dollar).

NIlai konstanta ini bersifat tetap/konstan, bukan variabel, properti, hasil perhitungan matematis atau nilai balikan fungsi. Nilai konstanta ini bisa berupa integer atau string. Contoh konstanta adalah nilai pi yang besarnya 22/7 atau sering dibulatkan menjadi 3.14.

Membuat Konstanta

Untuk membuat konstanta didalam class, kita menggunakan keyword "const" kemudian diikuti dengan nama konstanta, tanda samadengan (=) lalu nilai dari konstanta.
 class namaClass {  
   const nama_konstanta = nilai_konstanta;  
 }  

Menggunakan Konstanta

Cara menggunakan konstanta agak berbeda dengan cara menggunakan variabel/properti. Jika dalam menggunakan properti diluar class kita harus instantisasi object dan menggunakan tanda "->", maka pada konstanta hal ini tidak berlaku.

Kita bisa menggunakan konstanta dengan beberapa cara berikut ini :

1. Cara langsung tanpa instantisasi obyek

Dengan cara ini kita bisa menggunakan konstanta tanpa harus membuat object dulu. Aturan penulisannya dengan menyebut nama class dan diikuti tanda dobel titik dua (::).
 class MyClass {  
   const Konstanta = "Nilai Konstan";  
 }

 echo MyClass::Konstanta; 

2. Cara tidak langsung dengan instantisasi object

Untuk menggunakan konstanta dengan instantisasi object kita harus menggunakan bantuan method yang menampilkan konstanta. Method ini menggunakan keyword "self" untuk mengakses konstanta didalam class.
 class MyClass {  
   const Konstanta = "Nilai Konstan";  

    function showConstant() {
        return  self::Konstanta;
    }
 }

$class = new MyClass();
echo $class->showConstant();
Pada contoh terlihat kita tidak bisa mengakses konstanta dengan cara seperti properti berikut ini:
$class = new MyClass();
echo $class->Konstanta;
Hal ini karena cara tersebut hanya berlaku untuk properti dan method. Jika dijalankan akan menghasilkan tampilan error seperti ini :

    Notice: Undefined property: MyClass::$Konstanta in /var/www/php/demo.php on line 10

Sebagai gantinya kita menggunakan method showConstant() yang membalikkan nilai dari konstanta. Baru kemudian kita menampilkan nilai tersebut dengan perintah echo.

Referensi :

0 komentar

Post a Comment