酆叔のBlog

  • 首页
  • 分享技术
  • 八卦黑料
  • 生活日常
  • 日记
酆叔のBlog
上辈子作恶多端,这辈子早起上班。
  1. 首页
  2. IT技术
  3. 正文

PHP之访问修饰符

2024年4月25日 986点热度 0人点赞 0条评论

在 PHP 中,访问修饰符用于控制类的属性和方法的访问权限。PHP 提供了三种访问修饰符:

  • public(公共的):在任何地方都可以访问,没有限制。
  • protected(受保护的):只能在类内部以及继承类中访问,不能在外部访问。
  • private(私有的):只能在定义它们的类内部访问,不能在外部或继承类中访问。

public(公共的)

  • 公共属性和方法可以在类的内部、外部和子类中被访问。
  • 公共属性和方法对外部代码是可见的,并且可以被直接访问。
class MyClass {
    public $publicVar = "Public Property";
    
    public function publicMethod() {
        return "Public Method";
    }
}

$obj = new MyClass();
echo $obj->publicVar; // 输出:Public Property
echo $obj->publicMethod(); // 输出:Public Method

protected(受保护的)

  • 受保护的属性和方法可以在类的内部和子类中被访问,但不能在外部直接访问。
  • 受保护的属性和方法对外部代码是不可见的,但可以被继承的子类访问。
class MyClass {
    protected $protectedVar = "Protected Property";
    
    protected function protectedMethod() {
        return "Protected Method";
    }
}

class SubClass extends MyClass {
    public function displayProtected() {
        return $this->protectedVar; // 可以在子类中访问受保护属性
    }
}

$obj = new MyClass();
// echo $obj->protectedVar; // 无法直接访问受保护属性
// echo $obj->protectedMethod(); // 无法直接调用受保护方法

$subObj = new SubClass();
echo $subObj->displayProtected(); // 输出:Protected Property

private(私有的)

  • 私有属性和方法只能在类的内部访问,不能在外部或子类中直接访问。
  • 私有属性和方法对外部代码和继承的子类都是不可见的。
class MyClass {
    private $privateVar = "Private Property";
    
    private function privateMethod() {
        return "Private Method";
    }
}

$obj = new MyClass();
// echo $obj->privateVar; // 无法直接访问私有属性
// echo $obj->privateMethod(); // 无法直接调用私有方法
标签: PHP
最后更新:2024年4月28日

酆叔

上辈子作恶多端,这辈子早起上班。

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

最新 热点 随机
最新 热点 随机
2025/05/15 周四 晴 2025/05/12 周一 晴 2025/05/08 周四 多云 2025/05/07 周三 阵雨 2025/05/06 周二 阵雨 2025/04/30 周三 多云
2025/05/06 周二 阵雨2025/05/07 周三 阵雨2025/05/08 周四 多云2025/05/12 周一 晴2025/05/15 周四 晴
年味浸古镇,烟火暖人心——朱仙镇游记 VPN\机场 2025/05/06 周二 阵雨 认识GO语言 GO 编码风格 2025/04/30 周三 多云
腾讯云
又拍云
订阅
订阅

COPYRIGHT © 2024 酆叔のBlog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备2023016219号