PHP新手开发教程-OOP基础全掌握

实际上,由于我们希望网站的其他部分也能调用 changePassword() 函数(例如从设置页面或登录脚本调用),因此我们应该将该函数本身声明为 public。🔑

如果我们将该函数声明为 protected,则只有类本身及其“子类”(例如 AdminUser)才能使用它,这将导致普通的网页表单无法触发密码更改!

以下是实际示例:

class User {
    private $password; // Locked away from everyone 🔒

    // Accessible from anywhere in your website 🌍
    public function changePassword($newPassword) {
        if (strlen($newPassword) < 8) {
            return "Error: Password is too short!";
        }
        
        $this->password = $newPassword;
        return "Password updated successfully.";
    }
}

通过将属性设为私有,方法设为公共,我们成功地“封装”了数据。我们创建了一个受控的入口,只有遵循规则才能更改数据。

接下来是下一个支柱:多态性🎭

“多态性”这个词听起来像个深奥的科学术语,但它的意思其实很简单,就是“多种形态”。在 PHP 中,它允许不同的类拥有同名但功能不同的方法。

假设我们有一个 Animal 父类,其中包含一个 makeSound() 方法。

Dog 子类会生成自己的版本:echo “Bark!”;

Cat 子类会生成自己的版本:echo “Meow!”;

这非常有用,因为你可以创建一个包含各种动物的列表,然后让它们都调用 makeSound() 方法,而无需知道每种动物的具体种类。

如果你正在编写一个包含 calculateArea() 方法的“形状”程序,那么 Square 类和 Circle 类中该方法的计算方式会有什么不同呢?

×
PHP新手开发教程-OOP基础全掌握

PHP新手开发教程-OOP基础全掌握

PHP 中的面向对象编程 (OOP) 是...

查看更多

Modulo马杜罗操作符讲解和余数的周期性

To understand w …