这篇文章介绍的内容是关于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,'
';
echo '我有',$this->money,'元钱
';
echo '我今年',$this->age,'岁
';
}
}class Stu extends Human {
private $friend = '小花';
public function talk() {
echo '我叫',$this->name,'
';
echo '我有',$this->money,'元钱
';
echo '我今年',$this->age,'岁
';
}
}
$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+MYSQL开发,具有完善的企业、信息、产品、文章发布和管理功能,灵活的会员权限控制和会员管理系统,灵活的可视化模版引擎,HTML静态页面生成和多语言支持,丰富的网站辅助工具,用于创建行业商贸信息网站、地方商贸信息门户网站。v5.1版本增加了多项功能,支持了PHP5+MYSQL5环境,前台网站插件开放源码,更利于个性化的商贸网站开发。主要功能模块:企业名录系统 - 企业介绍发布和企业名录
立即学习“PHP免费学习笔记(深入)”;










