OOP with PHP
Assalamualaikum wr.wb Teman-teman
ketemu lagi nih saya di blog yang sama :v
Nah,di postingan kali ini aku bakal ngebahas OOP pada PHP.
Nah, Apasih itu ok kita lansung aja yuk kita ke pembahasannya.
A.Basic Class pada PHP
Nah,Definisi class adalah dasar (basic class) dimulai dengan kata kunci class, diikuti oleh nama
nama,Kemudian diikuti oleh sepasang kurung kurawal yang melampirkan definisi properties dan
method memiliki class tersebut.
Sebaga contoh class :

Ok,Variabel pseudo di atas $this tersedia ketika sebuah method dipanggil dari dalam konteks objek.
$ this adalah referensi ke objek pemanggil.
B.Instansi Class
Selanjutnya, Untuk membuat instance class, kata kunci “new” harus digunakan. Objek akan selalu
dibuat kecuali objek memiliki konstruktor yang ditentukan untuk melempar exception pada error.
Class harus didefinisikan sebelum instantiasi (dalam beberapa kasus ini adalah persyaratan).
Sebagai Contoh Instance :

C.Object
DiSelanjutnya , Dalam konteks class, kita dapat membuat objek baru dengan objek atau parent baru.
Saat menetapkan instance class yang sudah dibuat ke variabel baru, variabel baru akan mengakses
instance yang sama dengan objek yang ditugaskan.
Sebagai Contoh membuat objek baru :

D.Properties dan Method
Selanjutnya , Class propertieses dan method berada dalam “namespace" yang terpisah, sehingga
Dimungkinkan untuk memiliki propertieses dan method dengan nama yang sama. Mengacu pada
properties dan method memiliki notasi yang sama, kemudian apakah propertieses akan diakses atau
method akan dipanggil, semata-mata tergantung pada konteksnya, yaitu apakah penggunaannya
sebgai akses variabel atau pemanggilan fungsinya.
Sebagai Contoh pengaksesan properties & pemanggilan method :

E.Extends
Selanjutnya Yaitu,Class dapat mewariskan method dan properties class lain dengan menggunakan
kata kunci yangdiperluas dalam deklarasi class. Tidak mungkin untuk memperpanjang beberapa class
class; suatu class hanya dapat mewarisi dari satu class dasar, method dan properties yang diwarisi
dapat digantikan dengan mendeklarasikannya dengan nama yang sama yang didefinisikan di class
induk.
Jika class induk telah mendefinisikan method sebagai final, method itu mungkin tidak
diganti. Dimungkinkan untuk mengakses method yang diganti atau properties statis dengan
mereferensikannya dengan parent .
Sebagai Contoh class inheritance :

Nah langsung aja kita ke studi kasus atau Pembahasan Inti nya :
Buat class baru dengan nama HewanPeliharaan yang terdiri dari atribut nama dan jenis, dan metode
bersuara. HewanPeliharaan bersuara sesuai dengan jenis nya. Jika jenisnya Kucing maka bersuara
Mengeong, jika jenisnya Kambing maka bersuara Mbe Pastikan kelompokan HewanPeliharaan
berdasarkan jenis makananya juga.
Pertama buat class HewanPeliharaan sebagai berikut :
<?php
/**
*
*/
include 'KelompokMakan.php';
class HewanPeliharaan extends KelompokMakan
{
public $nama;
public $jenis;
public function bersuara()
{
$jenis = $this->jenis;
switch ($jenis) {
case 'Kucing': return 'Mengeong';
case 'Kambing': return 'Mbe';
case 'Singa': return 'Mengaung';
}
}
function __construct($nama, $jenis, $makanan)
{
$this->nama = $nama;
$this->jenis = $jenis;
$this->makanan = $makanan;
}
function get_nama()
{
return $this->nama;
}
function get_jenis()
{
return $this->jenis;
}
function get_makanan()
{
return $this->makanan;
}
}
?>
Setelah itu buat class KelompokMakanan sebagai berikut :
<?php
/**
*
*/
class KelompokMakan
{
public $makanan;
public function jenis()
{
$makanan = $this->makanan;
switch ($makanan) {
case 'Capcay': return 'Omnivora';
case 'Daging': return 'Karnivora';
case 'Rumput': return 'Herbivora';
}
}
}
?>
Lalu buat file index.php untuk memanggil class" diatas:
<?php
include 'HewanPeliharaan.php';
$hewan1 = new HewanPeliharaan("Kim", "Kucing", "Capcay");
$hewan2 = new HewanPeliharaan("Geby", "Kambing", "Rumput");
$hewan3 = new HewanPeliharaan("Simba", "Singa", "Daging");
?>
<style type="text/css">
body{
font-family: 'Chilanka', cursive;
color: white;
background-image: url(background.jpeg);
background-size: cover;
background-attachment: fixed;
font-size: 20px;
}
table{
background-color: pink;
color: white;
border-color: white;
width: 80%;
height: 30%;
margin-top: 80px;
}
h1{
margin-top: 90px;
}
</style>
<h1 align="center">
Daftar Hewan Peliharaan</h1>
<table border="1" align="center">
<tr align="center">
<td>Nama</td>
<td>Jenis Peliharaan</td>
<td>Suara</td>
<td>Makanan</td>
<td>Jenis</td>
</tr>
<tr align="center">
<td><?php echo $hewan1->get_nama() ?></td>
<td><?php echo $hewan1->get_jenis() ?></td>
<td><?php echo $hewan1->bersuara() ?></td>
<td><?php echo $hewan1->get_makanan() ?></td>
<td><?php echo $hewan1->jenis() ?></td>
</tr>
<tr align="center">
<td><?php echo $hewan2->get_nama() ?></td>
<td><?php echo $hewan2->get_jenis() ?></td>
<td><?php echo $hewan2->bersuara() ?></td>
<td><?php echo $hewan2->get_makanan() ?></td>
<td><?php echo $hewan2->jenis() ?></td>
</tr>
<tr align="center">
<td><?php echo $hewan3->get_nama() ?></td>
<td><?php echo $hewan3->get_jenis() ?></td>
<td><?php echo $hewan3->bersuara() ?></td>
<td><?php echo $hewan3->get_makanan() ?></td>
<td><?php echo $hewan3->jenis() ?></td>
</tr>
</table>
Dan hasilnya adalah sebagai berikut :

Ok,Mungkin Itu saja Yang hari ini Kita bahas Bila ada error silahkan komen di kolom komentar ,
Semoga Bermanfaat bagi kita semua :v.
Wasalamualaikum wr.wb
ketemu lagi nih saya di blog yang sama :v
Nah,di postingan kali ini aku bakal ngebahas OOP pada PHP.
Nah, Apasih itu ok kita lansung aja yuk kita ke pembahasannya.
A.Basic Class pada PHP
Nah,Definisi class adalah dasar (basic class) dimulai dengan kata kunci class, diikuti oleh nama
nama,Kemudian diikuti oleh sepasang kurung kurawal yang melampirkan definisi properties dan
method memiliki class tersebut.
Sebaga contoh class :
Ok,Variabel pseudo di atas $this tersedia ketika sebuah method dipanggil dari dalam konteks objek.
$ this adalah referensi ke objek pemanggil.
B.Instansi Class
Selanjutnya, Untuk membuat instance class, kata kunci “new” harus digunakan. Objek akan selalu
dibuat kecuali objek memiliki konstruktor yang ditentukan untuk melempar exception pada error.
Class harus didefinisikan sebelum instantiasi (dalam beberapa kasus ini adalah persyaratan).
Sebagai Contoh Instance :
C.Object
DiSelanjutnya , Dalam konteks class, kita dapat membuat objek baru dengan objek atau parent baru.
Saat menetapkan instance class yang sudah dibuat ke variabel baru, variabel baru akan mengakses
instance yang sama dengan objek yang ditugaskan.
Sebagai Contoh membuat objek baru :
D.Properties dan Method
Selanjutnya , Class propertieses dan method berada dalam “namespace" yang terpisah, sehingga
Dimungkinkan untuk memiliki propertieses dan method dengan nama yang sama. Mengacu pada
properties dan method memiliki notasi yang sama, kemudian apakah propertieses akan diakses atau
method akan dipanggil, semata-mata tergantung pada konteksnya, yaitu apakah penggunaannya
sebgai akses variabel atau pemanggilan fungsinya.
Sebagai Contoh pengaksesan properties & pemanggilan method :
E.Extends
Selanjutnya Yaitu,Class dapat mewariskan method dan properties class lain dengan menggunakan
kata kunci yangdiperluas dalam deklarasi class. Tidak mungkin untuk memperpanjang beberapa class
class; suatu class hanya dapat mewarisi dari satu class dasar, method dan properties yang diwarisi
dapat digantikan dengan mendeklarasikannya dengan nama yang sama yang didefinisikan di class
induk.
Jika class induk telah mendefinisikan method sebagai final, method itu mungkin tidak
diganti. Dimungkinkan untuk mengakses method yang diganti atau properties statis dengan
mereferensikannya dengan parent .
Sebagai Contoh class inheritance :
Nah langsung aja kita ke studi kasus atau Pembahasan Inti nya :
Buat class baru dengan nama HewanPeliharaan yang terdiri dari atribut nama dan jenis, dan metode
bersuara. HewanPeliharaan bersuara sesuai dengan jenis nya. Jika jenisnya Kucing maka bersuara
Mengeong, jika jenisnya Kambing maka bersuara Mbe Pastikan kelompokan HewanPeliharaan
berdasarkan jenis makananya juga.
Pertama buat class HewanPeliharaan sebagai berikut :
<?php
/**
*
*/
include 'KelompokMakan.php';
class HewanPeliharaan extends KelompokMakan
{
public $nama;
public $jenis;
public function bersuara()
{
$jenis = $this->jenis;
switch ($jenis) {
case 'Kucing': return 'Mengeong';
case 'Kambing': return 'Mbe';
case 'Singa': return 'Mengaung';
}
}
function __construct($nama, $jenis, $makanan)
{
$this->nama = $nama;
$this->jenis = $jenis;
$this->makanan = $makanan;
}
function get_nama()
{
return $this->nama;
}
function get_jenis()
{
return $this->jenis;
}
function get_makanan()
{
return $this->makanan;
}
}
?>
Setelah itu buat class KelompokMakanan sebagai berikut :
<?php
/**
*
*/
class KelompokMakan
{
public $makanan;
public function jenis()
{
$makanan = $this->makanan;
switch ($makanan) {
case 'Capcay': return 'Omnivora';
case 'Daging': return 'Karnivora';
case 'Rumput': return 'Herbivora';
}
}
}
?>
Lalu buat file index.php untuk memanggil class" diatas:
<?php
include 'HewanPeliharaan.php';
$hewan1 = new HewanPeliharaan("Kim", "Kucing", "Capcay");
$hewan2 = new HewanPeliharaan("Geby", "Kambing", "Rumput");
$hewan3 = new HewanPeliharaan("Simba", "Singa", "Daging");
?>
<style type="text/css">
body{
font-family: 'Chilanka', cursive;
color: white;
background-image: url(background.jpeg);
background-size: cover;
background-attachment: fixed;
font-size: 20px;
}
table{
background-color: pink;
color: white;
border-color: white;
width: 80%;
height: 30%;
margin-top: 80px;
}
h1{
margin-top: 90px;
}
</style>
<h1 align="center">
Daftar Hewan Peliharaan</h1>
<table border="1" align="center">
<tr align="center">
<td>Nama</td>
<td>Jenis Peliharaan</td>
<td>Suara</td>
<td>Makanan</td>
<td>Jenis</td>
</tr>
<tr align="center">
<td><?php echo $hewan1->get_nama() ?></td>
<td><?php echo $hewan1->get_jenis() ?></td>
<td><?php echo $hewan1->bersuara() ?></td>
<td><?php echo $hewan1->get_makanan() ?></td>
<td><?php echo $hewan1->jenis() ?></td>
</tr>
<tr align="center">
<td><?php echo $hewan2->get_nama() ?></td>
<td><?php echo $hewan2->get_jenis() ?></td>
<td><?php echo $hewan2->bersuara() ?></td>
<td><?php echo $hewan2->get_makanan() ?></td>
<td><?php echo $hewan2->jenis() ?></td>
</tr>
<tr align="center">
<td><?php echo $hewan3->get_nama() ?></td>
<td><?php echo $hewan3->get_jenis() ?></td>
<td><?php echo $hewan3->bersuara() ?></td>
<td><?php echo $hewan3->get_makanan() ?></td>
<td><?php echo $hewan3->jenis() ?></td>
</tr>
</table>
Dan hasilnya adalah sebagai berikut :
Ok,Mungkin Itu saja Yang hari ini Kita bahas Bila ada error silahkan komen di kolom komentar ,
Semoga Bermanfaat bagi kita semua :v.
Wasalamualaikum wr.wb
Komentar
Posting Komentar