📜  PHP oops中访问权限(1)

📅  最后修改于: 2023-12-03 14:45:12.410000             🧑  作者: Mango

PHP OOP中的访问权限

在面向对象编程中,访问权限是指将类成员(属性和方法)设置为公有、私有或受保护。这样做是为了保护类的数据,避免意外或不良用途访问,并提供更好的代码安全性和维护性。

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编程中的一个重要概念,通过设置公有、受保护和私有成员可以改善代码的安全性和可维护性。公有成员可以在任何地方访问,受保护成员只能在类内部和继承类中访问,私有成员只能在类内部访问。在设计类时,应根据需要妥善设置访问权限。