2 minutes
Catatan Belajar OOP PHP (Bag. 3)
Visibility
Access Modifier
public
Dapat digunakan dimana saja.
protected
Hanya dapat digunakan di dalam sebuah kelas beserta turunanya.
private
Hanya dapat digunakan di dalam sebuah kelas tertentu saja.
Setter & Getter (non magic method)
Method untuk ngeset dan untuk ngeget
Sebaiknya, property atau method itu tidak public. Pakailah protected atau private sesuai dengan kebutuhan apakah akan di pakai di child class apa tidak. Maka dari itu, dibutuhkan setter dan getter untuk memodifikasi datanya.
Setter dan getter ini mah bisa dibikin dengan mebuat method dengan visibility public jika ingin diakses dimana saja, atau protected jika ingin dipakai di kelas child saja. Di method ini pun bisa ditambahkan skrip untuk melakukan sesuatu dengan data tersebut (misal: validasi).
Static Keyword
Untuk ngakses property dan method pada class tanpa instansiasi, menggunakan static property dan static method.
Gunakan keyword static
sebelum nama property atau method.
Untuk memanggil property atau method yang ada dalam kelas yang sama, gunakan keyword self
.
class mantanStatic {
public static $angka = 1;
public static function helloMantan() {
return "hello mantan yang ke- " . self::$angka;
}
}
// memanggil static property angka
echo mantanStatic::$angka;
// memanggil static method helloMantan
echo mantanStatic::halo();
Kenapa pake static?
Untuk property dan method yang terikat dengan class, bukan object.
Nilainya akan tetap meskipun object di-instansiasi berulang kali (tidak reset).
OOP rasa procedural.
Biasanya digunakan untuk membuat fungsi bantuan / helper.
Digunakan di class-class utility pada framework.
Constant
Bahasa Indonesianya adalah konstanta.
Sebuah identifier untuk nyimpen nilai yang tidak dapat berubah.
Cara bikinnya gini:
define('NAMAKONSTANTA', 'value');
// atau
const NAMAKONSTANTA = 'value';
Jika dibikin pake define
, gak bisa masuk ke class.
Kalau pake const
, baru bisa masuk class.
Cara aksesnya gini, misal:
echo NAMAKONSTANTA;
Jika dalam class, ngaksesnya gini, misal:
echo NamaClass::NAMAKONSTANTA;
Magic Constant
Adalah constant yang udah disediain sama php.
Diantaranya:
__LINE__
__FILE__
__DIR__
__FUNCTION__
__NAMESPACE__
Liat di dokumentasi php aja lah kalau pengen tau itu untuk apa.
Web Programming UNPAS
OOP DASAR pada PHP #9 - Visibility
OOP DASAR pada PHP #10 - Setter dan Getter
OOP DASAR pada PHP #11 - Static Keyword
OOP DASAR pada PHP #12 - Constant
Kalau kamu suka tulisan saya, boleh kok traktir saya kopi. Tinggal klik di sini.