这篇文章介绍的内容是关于PHP的public_protected_private权限控制详解 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
// 比较private、protected、public三者的区别
/*
private protected public
本类内 Y Y Y
子类内 N Y Y
外部 N N Y
*/
class Human { private $name = 'zhangsan'; protected $money = 3000; public $age = 28; public function say() { echo '我叫',$this->name,'<br >'; echo '我有',$this->money,'元钱<br >'; echo '我今年',$this->age,'岁<br >'; } }class Stu extends Human { private $friend = '小花'; public function talk() { echo '我叫',$this->name,'<br >'; echo '我有',$this->money,'元钱<br >'; echo '我今年',$this->age,'岁<br >'; } } $ming = new Stu(); // 下行会报错,因为类外不能调用private属性 // Fatal error: Cannot access private property Stu::$friendecho $ming->friend; // 下行会报错,因为类外不能调用protected属性 // Fatal error: Cannot access protected property Stu::$moneyecho $ming->money; // 无法调用private属性的name // Notice: Undefined property: Stu::$name$ming->talk(); // 我叫(报错) // 我有3000元钱 // 我今年28岁 $yuan = new Human();$yuan->say(); // 我叫zhangsan// 我有3000元钱// 我今年28岁
/*
总结:
public 可以在类外调用,权限最为宽松
protected 和 private不能在类外调用
protected 可以在 子类内访问
public 和 protected 可以在本类内访问
*/
相关推荐:
以上是PHP的public_protected_private权限控制详解 的详细内容。更多信息请关注PHP中文网其他相关文章!