Kata Kunci $this
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan PHP di Coddy. Pelajaran 4 dari 91.
Kata kunci $this merujuk pada instance class saat ini di dalam method-nya. Kata kunci ini memungkinkan kamu mengakses dan mengubah property object saat ini.
Berikut contoh class dengan method yang menggunakan $this:
<?php
class Car {
public $color;
public $model;
public function honk() {
echo "Beep beep!\n";
}
public function describe() {
echo "I am a " . $this->color . " " . $this->model . "\n";
}
}Kata kunci $this digunakan di dalam method untuk merujuk ke object yang memanggil method tersebut.
Buat object mobil dan atur property-nya:
$myCar = new Car();
$myCar->color = "Red";
$myCar->model = "Sedan";Sekarang panggil method:
$myCar->honk();
$myCar->describe();Output:
Beep beep!
I am a Red SedanSaat kamu memanggil $myCar->describe(), PHP secara otomatis menetapkan $this agar merujuk ke $myCar. Dengan cara ini, method mengetahui property milik object mana yang harus diakses.
Jika kamu memiliki object mobil lain:
$otherCar = new Car();
$otherCar->color = "Blue";
$otherCar->model = "SUV";
$otherCar->describe(); // Saya adalah Blue SUVPoin penting: $this selalu merujuk pada object tertentu yang memanggil method tersebut. Setiap object memiliki konteksnya sendiri saat sebuah method dijalankan.
Tantangan
MudahLengkapi class Car di car.php dengan menambahkan method bernama displayInfo yang menggunakan kata kunci $this untuk mencetak tahun, merek, dan model mobil dengan format:
"This car is a [year] [make] [model]"
car.php: Berisi definisi classCartempat kamu akan menambahkan methoddisplayInfodriver.php: File eksekusi utama yang mengimpor dan menggunakan classCar(terkunci)
Coba sendiri
<?php
require_once 'car.php';
$myCar = new Car();
$myCar->year = 2020;
$myCar->make = "Toyota";
$myCar->model = "Corolla";
$myCar->displayInfo();
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengenalan OOPclass vs objectKata Kunci $thismethodpropertyConstructor (__construct)Destructor (__destruct)Ringkasan: Kalkulator Sederhana4Pewarisan
Pewarisan DasarKata Kunci parent::Penimpaan methodKata Kunci finalClass AbstrakRingkasan: Hierarki Karyawan7Enkapsulasi
Public, Protected, PrivateModifier Akses secara MendalamGetter dan SetterPenyembunyian InformasiPromosi Constructor (8.0)Ulasan: Sistem Catatan Siswa2Namespace dan Autoloading
Pengenalan NamespaceKata Kunci useStandar Autoloading PSR-4Autoloader ComposerRingkasan: Proyek yang Terorganisasi5Interface dan Kontrak
Pengenalan InterfaceMengimplementasikan InterfaceImplementasi Beberapa InterfaceInterface vs Abstract ClassPetunjuk Tipe dengan InterfaceRekap: Kalkulator Bentuk8Magic Methods
Pengantar Magic Methods__toString & __debugInfo__get, __set, __isset, __unset__call & __callStatic__clone & Cloning Object__serialize & __unserializeRingkasan: Koleksi Kustom11Sistem Tipe Data dan Penanganan Error
Deklarasi TipeTipe NullableTipe Union dan IntersectionClass ExceptionHierarki Exception KustomTry, Catch, FinallyRekap: Validator Form3Property dalam class
Property instance vs staticKonstanta dalam classMethod & property staticProperty private & protectedProperty readonly (PHP 8.1)Ulasan: Pengelola Rekening Bank6Polimorfisme
Meninjau Kembali Method OverridingPolimorfisme melalui AntarmukaPetunjuk Tipe dan Tipe UnionPengikatan Statis TertundaRangkuman: Pemroses PembayaranLatihan sendiri: Compiler PHP online