类 Class
定义类以关键字class开头,后面跟类名,后面用花括号,类有属性和方法。
一个合法类名以字母或者下划线开头
<?php
class FirstClass{
public $var = 'default value';
public function displayVar() {
echo $this.var;
}
}
?>
上述的代码中有一个this关键字,这个在java中也有,PHP官方文档对于this是这么解释的:
$this
是一个到主叫对象的引用(通常是该方法所从属的对象,但如果是第二个对象静态调用时也可能是另一个对象)。
相当的拗口,意思是,例如上述代码,其中有一个属性$var
, 还有一个方法$displayVar
,如果这个方法想要使用这个类中的属性,就用了this这个关键字来代表这个类,这就是this关键字的作用
对象
类实例化后就是对象
创建一个类的实例,要使用到new关键字。当创建对象时该对象就被赋值,类在实例化前被定义
<?
//创建一个对象
$obj = new SimpleClass();
?>
继承(extends)
PHP中使用extends来继承另一个类的方法和属性,但是 php不支持多重继承
<?php
class ExtendClass extends firstClass{
//重新定义父类中的方法
function displayVar(){
echo '子类中的方法';
//访问父类的方法
parent::displayVar();
}
}
$extended = new ExtendClass();
$extended->displayVar();
?>