Pusat Ilmu Secara Detil

Tutorial OOP PHP : Memanggil Method dari class lain

Tutorial OOP PHP : Memanggil Method dari class lain

Sebelumnya kita telah mempelajari bagaimana cara membuat class dan object pada konsep OOP PHP dan cara membuat method Pada sesi tutorial OOP PHP lanjutan kali ini, kita akan mempelajari bagaimana cara mengkases method dari class lain.

Untuk dapat mengakses method dari class lain, tentunya terlebih dahulu kita harus sebuah class yang nantinya akan dipanggil pada class yang lain. Dalam contoh ini kita memilki dua class yang berbeda : class Phone_Number dan class Panggil.

Untuk memanggil method dari class lain, kita memiliki dua cara pembuatan class :
  • Cara Pertama : Kedua class dibuat pada file yang terpisah.
  • Cara Kedua : Kedua class dibuat pada file yang sama.

Memangil method dari class lain dengan cara pertama

Seperti yang diutarakan diatas, pada cara pertama class Phone_Number dibuat pada file andi.php  dan class Panggil berada pada file panggil.php.

Berikutnya program pada file andi.php :
<?php

class Phone_Number {
  
  // properti
   var $email;
   
   public function tampung($data) {
	   $this->email=$data;
	   return $this;
   }
   
   public function cetak(){
	   echo $this->email;
   }
}  
?>
Pada file andi.php kita membuat class Phone_Number yang memiliki property email dan method tampung serta method cetak.

Kemudian kita buat program untuk file panggil.php :
<?php
include "andi.php";
class Panggil{
    
    var $website;
    public function homepage($url) {
        $this->andi = new Phone_Number(); // Memanggil class Phone_Number
        $this->andi->tampung("andri@dtc-ilmu.com"); // Memanggil method tampung pada class Phone_Number
        
        $this->website=$url;
         
    }
    public function index() {
        echo "Emailnya adalah :" ;
        echo $this->andi->cetak() . "<br />";
        echo "Alamat website :";
        echo $this->website;
    }
    
}
$Var = new Panggil(); // Membuat object Var
$Var->homepage("ilmu-detil.blogspot.com"); // Memanggil method homepage
$Var->index(); // memanggil method index


?>
Pada program panggil.php, kita memiliki property website yang merupakan milik class Panggil dan dua method yaitu : method homepage dan method index.

Pada method homepage, kita memanggil class Phone_Number yang terdapat pada file andi.php. Agar dapat memanggil class lain pada file yang berbeda digunakan keyword include, dalam kasus ini kita menggunakan include "andi.php". Setelah memanggil class Phone_Number dilanjutkan dengan pembuatan object andi dan pemanggilan method cetak yang berada pada class Phone_Number  (terdapat pada file andi.php).

Pemberian nilai untuk property website dilakukan melalui method homepage. Sedangkan untuk mencetak object Var (nilai property website) dan object andi(nilai property email) dilakukan pada method index. Khusus untuk property objek andi, proses cetak nilainya dilakukan pada method cetak yang dipanggil dalam method index.

Jika kita jalankan file panggil.php pada browser, maka outputnya ditunjukkan oleh Gambar.1 dibawah ini :
memanggil method class lain
Gambar.1


Memanggil method dari class lain dengan cara kedua

Pada cara kedua ini, kedua class Phone_Number dan class Panggil diletakkan dalam satu file (tidak pada file terpisah). Pada contoh ini kita berikan nama file gabung.php:
<?php

class Phone_Number {
  
  // properti
  var $email;
   
   public function tampung($data) {
       $this->email=$data;
       return $this;
   }
   
   public function cetak(){
       echo $this->email;
   }
}
  
?>

<?php

class Panggil{
    
    var $website;
    public function homepage($url) {
        $this->andi = new Phone_Number(); // Memanggil class Phone_Number
        $this->andi->tampung("andri@dtc-ilmu.com"); // Memanggil method tampung pada class Phone_Number
        
        $this->website=$url;
         
    }
    public function index() {
        echo "Emailnya adalah :" ;
        echo $this->andi->cetak() . "<br />";
        echo "Alamat website :";
        echo $this->website;
    }
    
}
$Var = new Panggil(); // Membuat object Var
$Var->homepage("ilmu-detil.blogspot.com"); // Memanggil method homepage
$Var->index(); // memanggil method index


?>
Outputnya ditunjukkan oleh Gambar.2 dibawah ini :
Gambar.2

Dari cara pertama dan cara kedua menghasilkan output yang sama. Cara yang mana digunakan tidak masalah, yang terpenting pemahaman bagaiman kita dapat mengakses sebuah method dari class yang berbeda.

Share this:

You Might Also Like:

Disqus Comments