Membuat Function Di Dalam Class OOP

Mari kita lanjutkan pembahasan sebelumnya tentang Belajar Dasar-Dasar OOP. Setelah sebelumnya kita sudah belajar tentang Membuat Kelas Pada OOP, sesuai dengan janji saya sekarang kita akan membahas Cara Membuat Function Di Dalam Class. Seperti yang saya katakan pada tutorial sebelumnya, bahwa kita bisa membuat function di dalam class. Function di dalam suatu class bisa disebut sebagai method, dan sebuah method jika dibayangkan adalah segala sesuatu yang terkait dengan pekerjaan atau proses yang dabat diberikan pada suatu object.

Sebagai contoh method pada suatu object kendaraan. Sebuah method bisa kita berikan pada kendaraan tersebut, misalnya: status harga. Di dalam method status harga, terdapat serangkaian proses seperti jika harga di atas 5 juta berarti mahal, sedangkan jika di bawah 5 juta berarti murah. Itu sebagai contoh gambaran method di dalam class kendaraan.

Berikut ini contoh sebuah function yang dibuat di dalam class. Kita akan menggunakan class yang sudah dibuat pada tutorial sebelumnya yaitu handphone. Function dalam contoh berikut ini akan digunakan untuk menentukan apakah harga handphone tersebut masuk dalam kategori mahal atau murah. Disini handphone dikatan mahal jika harganya lebih dari 3 juta, dan jika harganya di bawah 3 juta bisa dikatakan murah.
<?php
class handphone{
 var $imei;
 var $harga;
 var $merek;
 var $warna;
 
 function cekHarga(){
  if($this->harga > 3000000){
   $keterangan = "Mahal";
  }
  else{
   $keterangan = "Murah";
  }
  return $keterangan;
 }
}
?>


Coba perhatikan perintah $this->harga. Variable $this merupakan built ini variable yang digunakan untuk mengakses properties atau method yang ada di dalam class tersebut. Sehingga perintah $this->harga digunakan untuk mengakses properties dari $harga yang ada di dalam class handphone.

NB:
Variable $keterangan dalam function cekHarga() bukan termasuk properties dalam class handphone karena tidak didefinisikan dalam bentuk var $keterangan.


Latihan:
  1. Di dalam kelas handphone pada contoh, tambahkan properties "tahun pembuatan"
  2. Buat sebuah function dalam class handphone dengan nama "hargaSecond()" untuk menentukan harga second dari handphone tersebut. Function ini akan me-return harga handphone dengan ketentuan seperti berikut:
    • Jika Tahun Pembuatan di atas 2008, maka harga secondnya turun 20% dari harga aslinya
    • Jika Tahun Pembuatannya antara 2000 s/d 2008, maka harga secondnya turun 30% dari harga aslinya
    • Jika Tahun Pembuatannya di bawah 2000, maka harga secondnya turun 40% dari harga aslinya.

Pembahasan:
  1. Menambahkan properties "tahun pembuatan"
    <?php
    class handphone{
     var $imei;
     var $harga;
     var $merek;
     var $warna;
     var $tahun_pembuatan;
    
     function cekHarga(){
      if($this->harga > 3000000){
       $keterangan = "Mahal";
      }
      else{
       $keterangan = "Murah";
      }
      return $keterangan;
     }
    }
    ?>
    
  2. Membuat function hargaSecond(), dan menentukan harga secondnya
    <?php
    class handphone{
     var $imei;
     var $harga;
     var $merek;
     var $warna;
     var $tahun_pembuatan;
     function cekHarga(){
      if($this->harga > 3000000){
       $keterangan = "Mahal";
      }
      else{
       $keterangan = "Murah";
      }
      return $keterangan;
     }
     
     function hargaSecond(){
      if($this->tahun_pembuatan > 2008){
       $harga = $this->harga - ($this->harga*20/100);
       return $harga;
      }
      else if($this->tahun_pembuatan >= 200 AND $this->tahun_pembuatan<=2008 ){
       $harga = $this->harga - ($this->harga*30/100);
       return $harga;
      }
      else if($this->tahun_pembuatan < 2000){
       $harga = $this->harga - ($this->harga*40/100);
       return $harga;
      }
      return $harga;
     }
    }
    ?>
    

Mungkin seperti itu sedikit penjelasan dan latihan tentang Membuat Function Di Dalam OOP PHP, selanjutnya kita akan belajar tentang Instansiasi Object OOP Di PHP.


Blog, Updated at: 12:26 PM

0 komentar:

Post a Comment

Berkomentarlah dengan bijak dan sopan. Tidak diperbolehkan menggunakan kata-kata yang mengandung SARA. Komentar akan melalui moderation terlebih dahulu, jika terdapat kata-kata yang tidak sesuai ketentuan, maka komenar tidak dapat ditampilkan. Mari Saling berkomentar dengan baik :)