Terdapat tiga jenis pengubah kebenaran akses PHP: 1. awam, yang bermaksud dikongsi, dengan skop kebenaran terbesar, dan boleh diakses di mana-mana sahaja 2. dilindungi, yang bermaksud dilindungi dan diwarisi, dan boleh sahaja; boleh diakses oleh kelas itu sendiri dan ahli dalaman kelas boleh diakses;
Persekitaran pengendalian artikel ini: sistem Windows 10, PHP versi 8.1, komputer Dell G3
Terdapat tiga jenis:
kongsi awam
dilindungi dilindungi, diwarisi
peribadi
Butiran:
awam:
Jenis awam boleh digunakan di dalam kelas, dalam subkelas atau di luar kelas tanpa sekatan
Ciri: Boleh dipanggil secara luaran, boleh dipanggil secara dalaman, boleh dipanggil oleh subkelas
Dalam subkelas, anda boleh panggil kaedah atau atribut awam melalui self::var dan parent::method memanggil kaedah kelas induk
Dalam contoh, anda boleh memanggil jenis awam melalui $obj->var Kaedah atau sifat
dilindungi:
Jenis yang dilindungi, boleh digunakan di dalam kelas dan dalam subkelas, tetapi tidak boleh digunakan di luar kelas
Ciri: Tidak boleh dipanggil secara luaran, tetapi boleh dipanggil secara dalaman. Subkelas boleh memanggil
Dalam subkelas, kaedah atau atribut yang dilindungi boleh dipanggil melalui self::var, dan parent::method memanggil kaedah kelas induk
Kaedah atau sifat jenis yang dilindungi tidak boleh dipanggil melalui $obj->var dalam contoh
peribadi:
Jenis peribadi, hanya boleh digunakan di dalam kelas , tidak boleh digunakan di luar kelas atau dalam subkelas.
Ciri: Tidak boleh dipanggil secara luaran, boleh dipanggil secara dalaman, tidak boleh dipanggil oleh subkelas
Atribut atau kaedah jenis ini hanya boleh digunakan dalam kelas ini, dalam keadaan dan subkelas kelas ini, Jenis peribadi atribut dan kaedah tidak boleh dipanggil dalam contoh subkelas
Contohnya adalah seperti berikut:
Apabila mencipta kaedah, jika ia tidak dinyatakan, lalai adalah awam
<?php class EMBA_student // 声明EMBA学生类 { //用private来定义私有类的属性 private $no; //序号 private $name; // 姓名 private $gender; //性别 private $age; //年龄 //方法 //方法1 ,私有方法,输出年龄 private function show_age() { echo"我的年龄是:$this->age<br />"; } //方法2,公有方法,回答年龄 public function ask_age() { $this->show_age(); } //方法3,设置数据 function set_data($arr){ $this->no=$arr["no"]; $this->name=$arr["name"]; $this->gender=$arr["gender"]; $this->age=$arr["age"]; } } //实例化一个对象 $s=new EMBA_student; $arr=array("no"=>"1","name"=>"Qian Zhang","gender"=>"Female","age"=>"33","department"=>"商业营销"); $s->set_data($arr); //echo $s->age;//Fatal error: Cannot access private property EMBA_student::$age in C:\xampp\htdocs\v\v.php on line 47 //$s->show_age(); //Fatal error: Call to private method EMBA_student::show_age() from context '' in C:\xampp\htdocs\v\v.php on line 48 $s->ask_age(); ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Apakah pengubah kebenaran akses php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!