abstract:PHP有三种访问方式:public,private和protected. 对于一个类成员的访问方式,可以是其中之一. 如果没有指明访问方式,默认地访问方式为public. 也可以为静态成员指明一种访问方式,将访问方式放在static关键字之前(如public static).Public成员可以被毫无限制地访问.类外部的任何代码都可以读写public属性. 可以从脚本的任何地方调用一个public
PHP有三种访问方式:public,private和protected. 对于一个类成员的访问方式,可以是其中之一. 如果没有指明访问方式,默认地访问方式为public. 也可以为静态成员指明一种访问方式,将访问方式放在static关键字之前(如public static).
Public成员可以被毫无限制地访问.类外部的任何代码都可以读写public属性. 可以从脚本的任何地方调用一个public方法. 在PHP的前几个版本中,所有方法和属性都是public, 这让人觉得对象就像是结构精巧的数组.
protected成员在类的内部,类的继承上下文环境中允许使用,类的外部禁止使用。
Private(私有)成员只在类的内部可见. 不能在一个private属性所在的类方法之外改变或读取它的值. 同样地,只有在同一个类中的方法可以调用一个private方法. 继承的子类也不能访问父类中的private 成员.
<?php //类成员的访问限制 class Staff { public $name;//公共,类的内部、外部以及继承的子类都可以访问 protected $dept;//保护的,在类的内部以及继承的子类可以访问,外部不能访问 private $salary;//私有的,仅在类的内部使用 public function __construct($name,$dept,$salary){ $this->name=$name; $this->dept=$dept; $this->salary=$salary; } //创建接口访问受保护的成员 public function getDept(){ return $this->dept; } } $staff= new Staff(); $staff->name='刘子光'; $staff->dept='保安部'; $staff->salary=5000; echo $staff->name;//可以访问 //echo $staff->dept;//bu可以访问 //echo $staff->getDept();//可以访问 ?>