定义一个类:
class person()
{
public $name; //普通成员属性
const $sex = 'man'; //类常量
public static $age; //类静态属性
//魔术方法
public function __construct() {}//构造方法
public function __destruct() {}//析构方法
public function __isset() {}//为不存在的属性或受保护的属性调用isset时触发
public function __clone() {} //克隆对象是触发
public function __tostring() {}//把对象当作字符串输出时触发
public function __sleep() {}//对象被序列化时触发
public function __weakup() {}//反序列化时触发
public function __call() {}//调用不存在或受保护的方法时触发
public function __get() {}//调用不存在或受保护的属性时触发
public function __set() {}//给不存在后受保护的属性赋值时触发
public function __unset() {} //给不存在后受保护的属性使用unset时触发
}
实例化类使用 new 关键字
访问属性或方法使用 -> 操作符
访问静态属性或则方法 使用域作用解析操作符
类名::$属性名
类名::方法名()
对象可以使用 serialize 序列化为字符串保存
使用unserialize反序列化为对象, 反序列化时必须要用该对象的类声明,否则会生成 php 的一个系统类的类对象
总结:
最有用的魔术方法 __call() __isset() __get()