📅  最后修改于: 2023-12-03 14:45:12.410000             🧑  作者: Mango
在面向对象编程中,访问权限是指将类成员(属性和方法)设置为公有、私有或受保护。这样做是为了保护类的数据,避免意外或不良用途访问,并提供更好的代码安全性和维护性。
PHP中有三种访问权限:公有、受保护和私有。
公共成员可以通过类的任何实例访问。
class Person {
public $name;
public function sayHello() {
echo "Hello, my name is {$this->name}!";
}
}
$person = new Person();
$person->name = "John";
$person->sayHello(); // 输出:Hello, my name is John!
受保护的成员只能从类内部或继承类中访问。它们对类的外部是不可见的。
class Person {
protected $name;
protected function sayHello() {
echo "Hello, my name is {$this->name}!";
}
}
class Employee extends Person {
public function introduce() {
$this->name = "Sam";
$this->sayHello(); // 可在继承类中访问保护方法和属性
}
}
$employee = new Employee();
$employee->introduce(); // 输出:Hello, my name is Sam!
私有成员只能在类内部访问,与受保护的成员类似。
class Person {
private $name;
private function sayHello() {
echo "Hello, my name is {$this->name}!";
}
}
$person = new Person();
$person->name = "John"; // 不能在类外访问私有成员
$person->sayHello(); // 也无法在类外访问私有方法
访问权限是PHP OOP编程中的一个重要概念,通过设置公有、受保护和私有成员可以改善代码的安全性和可维护性。公有成员可以在任何地方访问,受保护成员只能在类内部和继承类中访问,私有成员只能在类内部访问。在设计类时,应根据需要妥善设置访问权限。