Penjelasan terperinci tentang pengubah kawalan kebenaran PHP: Untuk memahami sepenuhnya pengubah kawalan kebenaran yang biasa digunakan, contoh kod khusus diperlukan
Dalam pembangunan PHP, kawalan kebenaran adalah konsep yang sangat penting, yang boleh memastikan keselamatan dan kebolehpercayaan secara berkesan kod tersebut. Dalam kawalan kebenaran, pengubah suai adalah elemen penting. Terdapat tiga pengubah suai dalam PHP: awam, dilindungi dan peribadi, yang masing-masing mewakili tiga hak akses. Artikel ini akan memperkenalkan senario penggunaan dan penggunaannya secara terperinci, serta memberikan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik.
Pengubah suai awam ialah pengubah kebenaran yang paling banyak digunakan Selepas menambahkan pengubahsuai awam sebelum sifat atau kaedah dalam kelas, ia akan menjadi umum dan boleh digunakan di dalam dan di luar kelas. Berikut ialah contoh:
class Person { public $name; public function sayHello() { echo 'Hello!我的名字是' . $this->name; } } $person = new Person(); $person->name = 'Tom'; $person->sayHello();
Dengan kod di atas, kami mencipta kelas Person dan mentakrifkan $name harta awam dan kaedah awam sayHello() di dalamnya. Dengan memberikan nilai kepada atribut $name dan memanggil kaedah sayHello(), nilai atribut boleh diperoleh dan diubah suai secara luaran, dan kaedah yang sepadan boleh dipanggil.
pengubah suai dilindungi terhad kepada bahagian dalam kelas dan subkelas kelas Ia boleh digunakan untuk melindungi sifat atau kaedah kelas daripada diakses atau diubah suai sesuka hati oleh kod di luar kelas. Berikut ialah contoh:
class Person { protected $name; protected function sayHello() { echo 'Hello!我的名字是' . $this->name; } } class Student extends Person { public function introduce() { echo '我是' . $this->name . ',来自阿凡达星球'; } } $student = new Student(); $student->name = 'Lucy'; //会出错 $student->introduce();
Seperti yang anda lihat daripada contoh di atas, kami mencipta Pelajar kelas baharu dan mewarisi kelas Orang. Atribut $name yang dilindungi dan kaedah sayHello() yang dilindungi ditakrifkan dalam kelas Person, dan dalam kelas Student, kami mentakrifkan kaedah public introduce() untuk memaparkan atribut $name Since dalam kelas Student Properti $name tidak boleh diakses terus, jadi nilai yang salah diberikan kepadanya. Dengan cara ini $name tidak bocor ke bahagian lain kod.
pengubah suai peribadi adalah lebih ketat dan hanya boleh diakses dalam kelas dan tidak boleh diakses oleh kod luaran atau subkelas kelas. Berikut ialah contoh:
class Person { private $name; private function sayHello() { echo 'Hello!我的名字是' . $this->name; } } $person = new Person(); $person->name = 'Lily'; //会出错 $person->sayHello(); //会出错
Seperti yang anda lihat daripada contoh di atas, kami mencipta kelas Orang dan mentakrifkan harta peribadi $name dan kaedah peribadi sayHello() di dalamnya. Oleh kerana kedua-dua $name dan sayHello() ditetapkan sebagai peribadi, ia tidak boleh diakses dari luar dan sebarang percubaan untuk mengaksesnya daripada kod luaran akan mengakibatkan ralat.
Ringkasan
Melalui contoh di atas, kita dapat melihat senario penggunaan dan penggunaan ketiga-tiga pengubah itu, yang sepadan dengan tiga hak akses awam, dilindungi dan persendirian masing-masing. Dalam pembangunan PHP, penggunaan munasabah pengubah kawalan kebenaran bukan sahaja dapat meningkatkan kebolehselenggaraan dan keselamatan kod, tetapi juga berkesan mencegah ralat dan pepijat dalam kod.
Atas ialah kandungan terperinci Penjelasan terperinci tentang pengubah kawalan kebenaran PHP: Pemahaman menyeluruh tentang pengubah kawalan kebenaran yang biasa digunakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!