Materi Dasar PHP dengan OOP
1. Apa Itu OOP dalam PHP?
OOP (Object-Oriented Programming) adalah paradigma pemrograman yang berorientasi pada objek. Dalam PHP, OOP digunakan untuk membuat kode yang lebih terstruktur, modular, dan mudah dipelihara.
2. Konsep Dasar OOP
OOP memiliki beberapa konsep utama:
- Class: Template atau blueprint untuk membuat objek.
- Object: Instansi dari class yang memiliki properti dan metode.
- Property: Variabel dalam class.
- Method: Fungsi dalam class yang menentukan perilaku objek.
- Encapsulation: Menyembunyikan data agar tidak bisa diakses langsung dari luar class.
- Inheritance: Pewarisan sifat dari class induk ke class anak.
- Polymorphism: Kemampuan menggunakan method yang sama dengan cara berbeda.
3. Membuat Class dan Object di PHP
a. Membuat Class
class Mobil {
public $merk;
public $warna;
public function __construct($merk, $warna) {
$this->merk = $merk;
$this->warna = $warna;
}
public function tampilkanInfo() {
return "Mobil ini adalah $this->merk dengan warna $this->warna.";
}
}
b. Membuat Object dari Class
$mobil1 = new Mobil("Toyota", "Merah");
echo $mobil1->tampilkanInfo();
Output:
Mobil ini adalah Toyota dengan warna Merah.
4. Encapsulation (Enkapsulasi)
Encapsulation membatasi akses ke properti agar tidak bisa diubah langsung.
class Produk {
private $harga;
public function setHarga($harga) {
if ($harga < 0) {
echo "Harga tidak boleh negatif!";
} else {
$this->harga = $harga;
}
}
public function getHarga() {
return $this->harga;
}
}
Penggunaan:
$produk1 = new Produk(); $produk1->setHarga(50000); echo "Harga produk: " . $produk1->getHarga();
5. Inheritance (Pewarisan)
Inheritance memungkinkan class anak mewarisi properti dan method dari class induk.
class Hewan {
public $nama;
public function __construct($nama) {
$this->nama = $nama;
}
public function bersuara() {
return "Hewan ini mengeluarkan suara.";
}
}
class Kucing extends Hewan {
public function bersuara() {
return "$this->nama berkata: Meow!";
}
}
Penggunaan:
$kucing1 = new Kucing("Kitty");
echo $kucing1->bersuara();
Output:
Kitty berkata: Meow!
6. Polymorphism
Polymorphism memungkinkan class anak mengubah metode dari class induk agar memiliki perilaku yang berbeda.
class Burung extends Hewan {
public function bersuara() {
return "$this->nama berkata: Kicau!";
}
}
$burung1 = new Burung("Kenari");
echo $burung1->bersuara();
7. Interface dalam PHP
Interface digunakan untuk menentukan metode yang harus dimiliki oleh class yang mengimplementasikannya.
interface Kendaraan {
public function berjalan();
}
class Motor implements Kendaraan {
public function berjalan() {
return "Motor berjalan di jalan raya.";
}
}
8. Kesimpulan
OOP dalam PHP membuat kode lebih terstruktur dan mudah dikelola. Dengan memahami class, object, inheritance, encapsulation, dan polymorphism, kita bisa membuat program yang lebih baik.
Langkah berikutnya:
- Pelajari lebih dalam tentang Trait dan Abstract Class
- Gunakan OOP dalam proyek nyata seperti pembuatan sistem login atau e-commerce