类的基本操作 4、类的访问 为了向后兼容PHP4,PHP5声明属性依然可以直接使用关键字var 来替代(或者附加于) public、 private或 protected,但是已不再需 要var了。从PHP50到5.1.3,var一度曾被认为是废弃的,且抛出 E STRICT警告,但是PHP51.3之后它不再认为是废弃的,也不会抛 出警告。如果直接使用va声明属性,而没有用 public、 private或 protected之一,PHP5会将其视为 public。例如
类的基本操作 4、类的访问 为了向后兼容PHP 4,PHP 5 声明属性依然可以直接使用关键字var 来替代(或者附加于)public、private或protected,但是已不再需 要var了。从PHP 5.0到5.1.3,var一度曾被认为是废弃的,且抛出 E_STRICT警告,但是PHP 5.1.3之后它不再认为是废弃的,也不会抛 出警告。如果直接使用var声明属性,而没有用public、private或 protected之一,PHP 5 会将其视为public。例如:
类的基本操作 4、类的访问 class stu i var Snumber /PHP视其为 public protected Sname: private Phone public function Stuinfo0{echo"学生信息";}} Object=new Stu Sobject->number=081101 echo Sobject->number; //输出"081101 Sobject-> StuinfoO //输出"学生信息 Sobject->phone=84565879 /本语句出错,访问权限不够
类的基本操作 4、类的访问 class Cstu { var $number; //PHP视其为public protected $name; private $phone; public function Stuinfo() { echo "学生信息"; } } $object=new Cstu; $object->number="081101"; echo $object->number; //输出"081101" $object->Stuinfo(); //输出"学生信息" $object->phone="84565879"; //本语句出错,访问权限不够 ?>
类的基本操作 4、类的访问 访问静态属性和方法时需要使用到范围解析符“:,格式如下 classname: Attribute /访问静态属性 classname: Cfunction([Sargs,); /访问静态方法 例如: class Teacher public Snum="tom public static$name="未命名 public static function setname(Sname)[ Teacher: Sname=Sname; I public static function getnameOf echo Teacher Sname; I
类的基本操作 4、类的访问 访问静态属性和方法时需要使用到范围解析符“::”,格式如下: classname::$attribute; //访问静态属性 classname::Cfunction([$args,…]); //访问静态方法 例如: class Cteacher{ public $num="tom"; public static $name="未命名"; public static function setname($name) { Cteacher::$name=$name; } public static function getname(){ echo Cteacher::$name; } }
类的基本操作 4、类的访问 echo Teacher: Sname //输出"未命名 Teacher: setname("王林"); //访问 setname0方法 Teacher: getname O //输出"王林 echo Teacher. Sname //输出"王林" echo Teacher. Snum //出错
类的基本操作 4、类的访问 echo Cteacher::$name; //输出"未命名" Cteacher::setname("王林"); //访问setname()方法 Cteacher::getname(); //输出"王林" echo Cteacher::$name; //输出"王林" echo Cteacher::$num //出错 ?>