Bagaimana membuat objek menjelaskan dengan contoh di php?

Pemrograman berorientasi objek adalah pendekatan untuk pemrograman di mana objek dan kelas digunakan. Saat ini Java dan C++ sebagian besar digunakan untuk pemrograman berorientasi objek. Ruang lingkup pemrograman berorientasi objek terbatas di PHP 4, tetapi di PHP 5, model objek ditulis ulang untuk kinerja yang lebih baik dan lebih banyak fitur. Sekarang PHP 5 memiliki model objek lengkap

Isi

Apa itu objek?

Ide mendasar di balik bahasa berorientasi objek adalah untuk memasukkan sekumpulan variabel dan fungsi ke dalam satu unit dan menjaga agar variabel dan fungsi aman dari gangguan dan penyalahgunaan luar. Unit seperti itu disebut objek yang bertindak atas data. Mekanisme yang menyatukan data dan fungsi disebut enkapsulasi. Fitur ini memudahkan untuk menggunakan kembali kode di berbagai proyek. Fungsi yang dideklarasikan dalam objek menyediakan cara untuk mengakses data. Fungsi suatu objek disebut metode dan semua metode objek memiliki akses ke variabel yang disebut properti
Gambar berikut menunjukkan komponen-komponen suatu objek

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Kelas

Dalam pemrograman berorientasi objek, kelas adalah konstruksi atau prototipe dari mana objek dibuat. Kelas mendefinisikan anggota konstituen yang memungkinkan instance kelas memiliki status dan perilaku. Anggota bidang data mengaktifkan objek kelas untuk mempertahankan status dan metode mengaktifkan perilaku objek kelas. Gambar berikut menunjukkan komponen-komponen dari sebuah kelas

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

PHP. Membuat kelas dan Instansiasi

  • Definisi kelas dimulai dengan kata kunci class diikuti dengan nama kelas, kemudian diikuti dengan satu set kurung kurawal ({}) yang menyertakan konstanta, variabel (disebut "properti"), dan fungsi (disebut "metode") milik kelas
  • Nama kelas yang valid (tidak termasuk kata yang dicadangkan) dimulai dengan huruf atau garis bawah, diikuti dengan sejumlah huruf, angka, atau garis bawah
  • Nama kelas biasanya dimulai dengan huruf besar untuk membedakannya dari pengidentifikasi lainnya
  • Instance adalah objek yang telah dibuat dari kelas yang ada
  • Membuat objek dari kelas yang sudah ada disebut instantiating objek
  • Untuk membuat objek dari kelas, kata kunci baru harus digunakan
  • Kelas harus didefinisikan sebelum Instansiasi

Contoh

<?php
class Myclass
{      
 // Add property statements here
 // Add the methods here
} 
?>

Dalam contoh berikut kata kunci baru digunakan untuk membuat instance objek. Di sini $myobj mewakili objek dari kelas Myclass

<?php    
$myobj = new MyClass; 
?>
_

Mari kita lihat isi kelas Myclass menggunakan fungsi var_dump() (menampilkan informasi terstruktur (tipe dan nilai) tentang satu atau lebih variabel)

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>

Keluaran

object(Myclass)#1 (0) { }

Lihat contoh di browser

Mengatur Properti

  • Variabel anggota kelas disebut properti. Terkadang mereka disebut sebagai atribut atau bidang
  • Properti menyimpan data spesifik dan terkait dengan kelas yang telah ditentukan
  • Mendeklarasikan properti di kelas adalah tugas yang mudah, gunakan salah satu kata kunci publik, dilindungi, atau pribadi diikuti dengan deklarasi variabel normal. Jika dideklarasikan menggunakan var (kompatibilitas dengan PHP 4), properti akan didefinisikan sebagai publik
    • publik. Properti dapat diakses dari luar kelas, baik dengan skrip atau dari kelas lain
    • pribadi. Tidak ada akses yang diberikan dari luar kelas, baik oleh skrip atau dari kelas lain
    • terlindung. Tidak ada akses yang diberikan dari luar kelas kecuali kelas yang merupakan anak dari kelas dengan properti atau metode yang dilindungi
  • nowdocs (pada PHP 5. 3. 0) dapat digunakan dalam konteks data statis apa pun, termasuk deklarasi properti

Contoh

Setelah objek dibuat instance-nya, Anda dapat mengakses properti kelas menggunakan operator objek dan ->. Setiap anggota yang dideklarasikan dengan kata kunci "pribadi" atau "dilindungi" tidak dapat diakses di luar metode kelas

<?php   
class Myclass
{
 public $font_size =10;
}
$f = new MyClass;
echo $f->font_size;
?>
_

Keluaran

10

Lihat contoh di browser

Catatan. Ada kesalahan umum untuk menggunakan lebih dari satu tanda dolar saat mengakses variabel. Pada contoh di atas tidak akan ada tanda $ sebelum font_size ( echo $f->font_size ).

Setelah mendefinisikan metode, kita akan membahas contoh dengan properti kelas publik, privat, dan terlindungi

Metode Pengaturan

  • Fungsi-fungsi yang dideklarasikan dalam sebuah kelas disebut metode
  • Metode kelas persis mirip dengan fungsi PHP
  • Mendeklarasikan sebuah method di dalam sebuah class adalah tugas yang mudah, gunakan salah satu kata kunci public, protected, atau private diikuti dengan nama method
    • publik. Metode dapat diakses dari luar kelas
    • pribadi. Tidak ada akses yang diberikan dari luar kelas
    • terlindung. Tidak ada akses yang diberikan dari luar kelas kecuali kelas yang merupakan anak dari kelas dengan properti atau metode yang dilindungi
  • Nama metode yang valid dimulai dengan huruf atau garis bawah, diikuti dengan sejumlah huruf, angka, atau garis bawah
  • Badan metode terlampir dalam sepasang kurung yang berisi kode. Kurung kurawal buka ( { ) menunjukkan awal kode metode dan kurung kurawal tutup ( } ) menunjukkan penghentian metode
  • Jika metode tidak ditentukan oleh publik, dilindungi, atau privat maka standarnya adalah publik
  • Dapat mengakses properti dan metode instance saat ini menggunakan $this (Format $this->property) untuk properti non statis

Contoh

Setelah objek dibuat instance-nya, Anda dapat mengakses metode kelas menggunakan objek dan -> operator. Dalam contoh berikut metode customize_print() akan mencetak string dengan ukuran dan warna font tertentu dalam elemen paragraf html dengan bantuan pernyataan gema php

<?php   
class Myclass
{
 public $font_size ="18px";
 public $font_color = "blue";
 public $string_name = "w3resource";
 public function customize_print()
 {
 echo "<p style=font-size:".$this->font_size.";color:".$this->font_color.";>".$this->string_name."</p>";
 }
}
$f = new MyClass;
echo $f->customize_print();
?>
_

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

Sekarang ubah nilai font_size, font_color dan string dan periksa apakah metode custimize_print() dikembalikan.

<?php   
class Myclass
{
 public $font_size ="18px";
 public $font_color = "blue";
 public $string_name = "w3resource";
 public function customize_print()
 {
 echo "<p style=font-size:".$this->font_size.";color:".$this->font_color.";>".$this->string_name."</p>";
 }
}
$f = new MyClass;
$f->font_size = "20px";
$f->font_color = "red";
$f->string_name = "Object Oriented Programming";
echo $f->customize_print();
?>

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

PHP. Operator Resolusi Lingkup (. )

Dalam PHP, operator resolusi ruang lingkup juga disebut Paamayim Nekudotayim yang berarti "titik dua ganda" atau "titik dua kali" dalam bahasa Ibrani. Titik dua ganda (. ), adalah token yang memungkinkan akses ke properti statis, konstan, dan diganti atau metode kelas

PHP. Konstanta Kelas

  • Entitas khusus yang tetap berdasarkan kelas individu
  • Nama konstanta tidak diawali dengan tanda dolar ($) seperti deklarasi variabel normal
  • Antarmuka juga dapat menyertakan konstanta
  • Saat memanggil konstanta kelas menggunakan $classname. sintaks konstan, nama kelas sebenarnya bisa menjadi variabel
  • Mulai dari PHP5. 3, Anda dapat mengakses konstanta kelas statis menggunakan referensi variabel (Contoh. nama kelas. $varConstant)

Definisikan dan gunakan konstanta

<?php
  class MyClass
  {
  const constant1 = 'PHP Class Constant';
  function PrintConstant() 
  {
  echo  self::constant1 . "<br>";
  }
  }
  echo MyClass::constant1 . "<br>";
  $classname = "MyClass";
  echo $classname::constant1 . "<br>"; // As of PHP 5.3.0
  $class = new MyClass();
  $class->PrintConstant();
  echo $class::constant1."<br>"; // As of PHP 5.3.0
 ?>
_

Memahami properti publik, pribadi, dan dilindungi

Properti dapat bersifat publik, pribadi atau dilindungi. Publik berarti properti dapat diakses di mana saja, privat berarti properti dapat diakses oleh kelas yang mendefinisikan anggota dan dilindungi berarti properti hanya dapat diakses di dalam kelas itu sendiri dan oleh kelas yang diwariskan dan induk

Contoh

<?php
// Define a class
class Myclass
{
 // Declare $font_size as Public property
 public $font_size ="18px"; 
 // Declare $font_color as Private property
 private $font_color = "blue"; 
 // Declare $string_name as Protected property
 protected $string_name = "w3resource"; 
 // Declare a method to print properties value. This is public.
 function property_print()
 {
 echo $this->font_size;
 echo $this->font_color;
 echo $this->string_name;
 }
}
$obj = new MyClass;
echo $obj->font_size; //Display 18px 
echo $obj->font_color; //Fatal error: Cannot access private property Myclass::$font_color in F:\wamp\..
echo $obj->string_name; //Fatal error: Cannot access protected property Myclass::$string_name in F:\wamp\. 
$obj->property_print(); //Display 18pxbluew3resource
?>
_

Memahami metode publik, privat, terlindungi

Metode dapat bersifat publik, pribadi atau dilindungi. Publik berarti metode dapat diakses di mana saja, metode pribadi berarti dapat diakses oleh kelas yang mendefinisikan anggota dan dilindungi berarti metode hanya dapat diakses di dalam kelas itu sendiri dan oleh kelas yang diwariskan dan induk

<?php    
$myobj = new MyClass; 
?>
_0

Catatan. PHP menggunakan warisan dalam model objeknya dan ketika Anda memperluas kelas, subkelas mewarisi semua metode publik dan dilindungi dari kelas induk. Saat kita akan membahas tentang pewarisan, Anda akan mendapatkan lebih banyak informasi tentang properti dan metode yang dilindungi

Metode Pembuat PHP

  • Konstruktor adalah metode bawaan khusus, ditambahkan dengan PHP 5, memungkinkan pengembang untuk mendeklarasikan kelas
  • Konstruktor memungkinkan untuk menginisialisasi properti objek (i. e. nilai properti) saat objek dibuat
  • Kelas yang memiliki metode konstruktor dijalankan secara otomatis saat objek dibuat
  • Metode 'membangun' dimulai dengan dua garis bawah (__)
  • Konstruktor tidak diperlukan jika Anda tidak ingin meneruskan nilai properti apa pun atau melakukan tindakan apa pun saat objek dibuat
  • PHP hanya memanggil satu konstruktor

Sintaks umum untuk deklarasi konstruktor adalah sebagai berikut

fungsi __construct([argumen1, argumen2,. , argumenN])
{
/* kode inisialisasi kelas */
}
Jenis argumen1, argumen2,. ,argumenN dicampur

Contoh

<?php    
$myobj = new MyClass; 
?>
_1

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

Lebih banyak contoh tentang konstruktor

Seperti properti, konstruktor dapat memanggil metode kelas atau fungsi lainnya. Dalam contoh berikut tidak perlu memanggil metode secara terpisah (setelah membuat objek dan meneruskan parameter, lihat contoh sebelumnya) karena sudah dideklarasikan di dalam konstruktor. Lihat contoh berikut

<?php    
$myobj = new MyClass; 
?>
_2

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

metode PHP Destruktor

  • Destructor adalah mitra dari constructor
  • Fungsi destruktor dipanggil saat objek dihancurkan
  • Fungsi destruktor membersihkan semua sumber daya yang dialokasikan ke objek setelah objek dihancurkan
  • Fungsi destruktor biasanya dipanggil dengan dua cara. Saat skrip berakhir atau menghapus objek secara manual dengan fungsi unset()
  • Metode 'destruktor' dimulai dengan dua garis bawah (__)

Sintaks umum untuk deklarasi destruktor berikut

fungsi __destruct
{
/* kode inisialisasi kelas */
}
Jenis argumen1, argumen2,. ,argumenN dicampur

Contoh

<?php    
$myobj = new MyClass; 
?>
_3

Keluaran

<?php    
$myobj = new MyClass; 
?>
_4

Lihat contoh di browser

PHP. Menggunakan beberapa instance dari kelas yang sama

Dalam contoh berikut kami telah membuat banyak objek (contoh) dari kelas yang sama dan memberikan nilai yang berbeda

<?php    
$myobj = new MyClass; 
?>
_5

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

PHP. spl_autoload_register()

Banyak pengembang yang menulis aplikasi berorientasi objek membuat satu file sumber PHP per definisi kelas. Salah satu gangguan terbesar adalah harus menulis daftar panjang yang diperlukan termasuk di awal setiap skrip (satu untuk setiap kelas). Secara tradisional fungsi __autoload() digunakan untuk memuat kelas secara otomatis. Mulai dari PHP5. 1. 2 fungsi baru spl_autoload_register() diperkenalkan yang menyediakan alternatif yang lebih fleksibel untuk kelas autoloading. Karena alasan ini, penggunaan __autoload() tidak disarankan dan mungkin tidak digunakan lagi atau dihapus di masa mendatang

Sintaksis

<?php    
$myobj = new MyClass; 
?>
_6

Parameter

NameDescriptionautoload_functionFungsi pengisian otomatis sedang didaftarkan. Jika tidak ada parameter yang diberikan, implementasi default dari spl_autoload() akan didaftarkan. throwThis parameter menentukan apakah spl_autoload_register() harus membuang pengecualian ketika autoload_function tidak dapat didaftarkan. prependJika benar, spl_autoload_register() akan menambahkan autoloader pada stack autoload alih-alih menambahkannya

Kembalikan nilai

Mengembalikan TRUE jika berhasil atau FALSE jika gagal

Anda dapat menggunakan fungsi spl_autoload_register() dengan cara berikut

<?php    
$myobj = new MyClass; 
?>
_7

Contoh

Pertama-tama, kita akan membuat dua kelas dan menyimpannya di jalur /php/classes-objects/resource

kelas1. php

<?php    
$myobj = new MyClass; 
?>
_8

kelas2. php

<?php    
$myobj = new MyClass; 
?>
_9

Sekarang, buat file printstring. php dan simpan di /php/classes-objects

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>
0

Pada contoh di atas kita mencoba membuat dua objek, di mana nama kelasnya 'kelas 1' (simpan di /php/classes-objects/resource/class 1. php) dan 'class2' (simpan di /php/classes-objects/resource/class2. php). PHP meneruskan nama ini sebagai string ke spl_autoload_register(), yang memungkinkan Anda mengambil variabel dan menggunakannya untuk "menyertakan" kelas/file yang sesuai

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

PHP. Warisan

  • Warisan adalah prinsip pemrograman yang mapan
  • Warisan memungkinkan kelas untuk membentuk hierarki seperti silsilah keluarga
  • Mengizinkan subkelas berbagi metode dan properti (yang bersifat publik atau dilindungi) dari superkelasnya
  • Superclass adalah kelas induk
  • Subclass dapat menambahkan properti dan metode
  • Warisan memungkinkan penggunaan kembali kode
Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Contoh

Dalam contoh subkelas berikut, 'Mysubclass' mewarisi semua properti yang dilindungi dan metode publik dari kelas 'Myclass'. Selain itu, kami menambahkan atribut dekorasi teks dalam pernyataan gema di subkelas 'Mysubclass'

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>
1

Keluaran

Bagaimana membuat objek menjelaskan dengan contoh di php?

 

Lihat contoh di browser

PHP. Antarmuka

  • Memberikan metode untuk mengimplementasikan
  • Kelas turunan dapat mengimplementasikan lebih dari satu antarmuka
  • Antarmuka dapat mewarisi dari antarmuka lain menggunakan kata kunci extends
  • Semua metode diasumsikan publik dalam definisi antarmuka dapat didefinisikan secara eksplisit sebagai publik atau implisit
  • Ketika sebuah kelas mengimplementasikan banyak antarmuka, tidak boleh ada tabrakan penamaan antara metode yang didefinisikan dalam antarmuka yang berbeda

Sintaksis

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>
2

PHP. Kloning Objek

  • Kloning digunakan untuk membuat salinan objek
  • Salinan objek dibuat dengan menggunakan kata kunci clone
  • Saat objek dikloning, PHP 5 akan melakukan salinan dangkal dari semua properti objek
  • Setiap properti yang menjadi referensi ke variabel lain, akan tetap menjadi referensi
  • PHP menyediakan metode khusus __clone untuk menyalin objek
  • Setelah kloning selesai, jika metode __clone() ditentukan, maka metode __clone() objek yang baru dibuat akan dipanggil, untuk mengizinkan properti apa pun yang perlu diubah

Contoh

Dalam kloning objek PHP dilakukan dengan menggunakan kata kunci clone. Berikut adalah contoh kloning objek

Contoh. Kloning objek dengan metode ajaib __clone

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>
_3

Keluaran

<?php    
class Myclass
{      
 // Add property statements here
 // Add the methods here
}
$myobj = new MyClass;
var_dump($myobj);
?>
_4

Lihat contoh di browser

PHP. Metode ajaib

Nama fungsi __construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke() . PHP mencadangkan semua nama fungsi yang dimulai dengan __ sebagai ajaib

Kita telah membahas metode __construct(), __destruct() dan __clone()

Berikut adalah metode sihir lainnya

__panggilan()

__call() dipicu saat memanggil metode yang tidak dapat diakses dalam konteks objek

Sintaksis. public mixed __call ( string $name , array $arguments )

__panggilanStatis()

__callStatic() dipicu saat memanggil metode yang tidak dapat diakses dalam konteks statis

Sintaksis. public mixed __call ( string $name , array $arguments )

__Dapatkan()

__get() digunakan untuk membaca data dari properti yang tidak dapat diakses

Sintaksis. campuran publik __get ( string $name )

__mengatur()

__set() dijalankan saat menulis data ke properti yang tidak dapat diakses

Sintaksis. public void __set ( string $name , mixed $value )

__isset()

__isset() dipicu dengan memanggil isset() atau empty() pada properti yang tidak dapat diakses

Sintaksis. publik bo __isset ( string $name )

__tidak disetel()

__unset() dipanggil ketika unset() digunakan pada properti yang tidak dapat diakses

Sintaksis. public void __unset ( string $name )

__tidur()

__sleep() digunakan untuk melakukan data yang tertunda atau melakukan tugas pembersihan serupa. Selain itu, fungsi ini berguna jika Anda memiliki objek yang sangat besar yang tidak perlu disimpan sepenuhnya

Sintaksis. array publik __sleep ( batal )

__bangun()

__wakeup() digunakan untuk membangun kembali koneksi basis data apa pun yang mungkin hilang selama serialisasi dan melakukan tugas inisialisasi ulang lainnya

Bagaimana cara membuat objek baru di PHP?

Untuk membuat objek baru di PHP, Anda harus menggunakan kata kunci new .

Apa objek PHP yang dijelaskan dengan contoh?

Dalam PHP, Object adalah tipe data majemuk (beserta array) . Nilai lebih dari satu jenis dapat disimpan bersama dalam satu variabel. Objek adalah turunan dari kelas bawaan atau kelas yang ditentukan pengguna. Selain properti, kelas mendefinisikan fungsionalitas yang terkait dengan data.

Bagaimana cara membuat objek kelas di PHP?

Objek kelas dibuat menggunakan kata kunci baru .

Bagaimana kita bisa membuat kelas dan objek menjelaskan dengan sebuah contoh?

Untuk membuat objek Main , tentukan nama kelas, diikuti dengan nama objek, dan gunakan kata kunci baru. .
Contoh. Buat objek bernama " myObj " dan cetak nilai x. kelas publik Utama { int x = 5; . .
Contoh. .
Kedua. Jawa