Overloading pada PHP


Jika kita mempelajari tenik pemrogramman OOP (Object Oriented Programming) kita pasti menjumpai yang namanya Overloading. Pengertian Overloading itu sendiri pada PHP bertujuan untuk pembuatan property yang dinamis pada sebuah class pada PHP. Dengan Overloading kita bisa membuat public property baru atau public method baru pada saat pembuatan Object.

Penggunaan Overloading pada class PHP ini memungkinan interaksi dengan variable dan method yang tidak didefinisikan sebagai public. Tentu saja kita harus berhati-hati supaya Overloading tidak disalahgunakan untuk mengatur dan membaca property yang memang harus berstatus private.

Property Overloading

Pada PHP terdapat 4 Properti Overloading, yaitu :
  1. public void __set(string $name, mixed $value)
  2. __set() dijalankan ketika menulis data pada properti yang tidak dapat diakses
  3. public mixed __get(string $name)
  4. __get() digunakan untuk membaca data dari properti yang tidak dapat diakses
  5. public bool __isset(string $name)
  6. __isset() dipicu dengan memanggil method isset() atau empty() pada properti yang tidak dapat diakses
  7. public void __unset(string $name)
  8. __unset() dipanggil saat method unset() digunakan pada properti yang tidak dapat diakses
Properti Overloading hanya bekerja pada konteks objek. Method ini tidak boleh dinyatakan sebagai static method. Contoh penggunaan properti Overloading dari situs php.net :


Method Overloading

Dalam PHP ada dua method Overloading, yaitu :
  1. public mixed __call(string $name, array $argument)
  2. __call dipicu ketika memanggil method yang tidak dapat diakses di dalam objek.
  3. public static mixed __callStatic(string $name, array $argument)
  4. __callStatic dipicu ketika memanggil method yang tidak dapat diakses di dalam static.
$name adalah nama dari method yang dipanggil dan $argument merupakan enumerasi array yang berisi parameter yang dilewatkan pada method $name.

Contoh penggunaan method Overloading :

Footer Right