PHP中的访问控制
2012-08-04 23:51
225 查看
PHP中的访问控制符有三种:public,protected和private。
注:打勾表示可以在该位置上,可以访问修饰符修饰的类成员。访问是通过使用类名/类对象来访问的。
对于protected修饰符而言,
1)子类继承了父类中protected修饰的成员;
2)子类中可以定义父类对象或使用父类名来访问protected修饰的成员。
举例说明:
注意:
1)父类中的private修饰的成员不会被子类继承;
2)类对象是可以访问类的静态成员的,如:$this::$CITY。
注:打勾表示可以在该位置上,可以访问修饰符修饰的类成员。访问是通过使用类名/类对象来访问的。
对于protected修饰符而言,
1)子类继承了父类中protected修饰的成员;
2)子类中可以定义父类对象或使用父类名来访问protected修饰的成员。
举例说明:
<?php class Person { private $_name; protected static $CITY = "Xiamen"; protected $age = 22; public function __construct($name) { $this->_name = $name; } protected function getName() { return $this->_name; } protected function getCountry() { return "China"; } } class Student extends Person { public function getInfo() { $p = new Person("myName"); echo "继承了protected修饰的\$age成员属性:".$this->age."。<br />"; echo "继承了protected修饰的getCountry()成员方法:".$this->getCountry()."。<br />"; echo "通过父类对象调用了protected修饰的getName()实例方法:".$p->getName()."。<br />"; echo "通过父类名访问protected修饰的\$CITY静态属性:".Person::$CITY."。<br />"; } } $s = new Student(); echo $s->getInfo(); /* 输出: 继承了protected修饰的$age成员属性:22。 继承了protected修饰的getCountry()成员方法:China。 通过父类对象调用了protected修饰的getName()实例方法:myName。 通过父类名访问protected修饰的$CITY静态属性:Xiamen。 */ ?>
注意:
1)父类中的private修饰的成员不会被子类继承;
2)类对象是可以访问类的静态成员的,如:$this::$CITY。
相关文章推荐
- PHP访问控制修饰符
- php如何控制用户对图片的访问 PHP禁止图片盗链
- day 50 Nginx访问控制与php解析
- nginx防盗链+访问控制+限制指定目录运行php+解析支持php+现在user_agent
- PHP ‘ext/soap/soap.c’权限许可和访问控制
- nginx防盗链、访问控制、PHP解析、服务器代理
- php访问控制
- php笔记(三)PHP类和对象之访问控制
- Nginx防盗链,Nginx访问控制,,Nginx解析php相关配置,Nginx代理
- get_set.php 类的访问控制
- php使用Cookie控制访问授权的方法
- php的public、protected、private三种访问控制模式的区别
- [转]php的public、protected、private三种访问控制模式的区别
- Nginx防盗链,Nginx访问控制,Nginx解析PHP的相关配置,Nginx代理
- php访问控制
- PHP 关于访问控制的和运算符优先级介绍
- phpGACL-- 基于PHP的通用访问控制列表 [中文手册]
- php继承访问控制
- PHP面向对象访问控制public,protected,private