Administrator
Published on 2015-11-20 / 150 Visits
0
0

php魔术方法

PHP中把以两个下划线__开头的方法称为魔术方法(Magic methods),这些方法在PHP中充当了举足轻重的作用。 魔术方法包括:

  1. __construct(),构造函数
  2. __destruct(),析构函数
  3. __call($funName, $arguments),在对象中调用一个不可访问方法时调用
  4. __callStatic($funName, $arguments),用静态方式中调用一个不可访问方法时调用
  5. __get(string $name),读取不可访问(protected 或 private)或不存在的属性的值时,__get() 会被调用。
  6. __set(string $name, mixed $value),在给不可访问(protected 或 private)或不存在的属性赋值时,__set() 会被调用。
  7. __isset(string $name),当对不可访问(protected 或 private)或不存在的属性调用 isset() 或 empty() 时,__isset() 会被调用。
  8. __unset(string $name),当对不可访问(protected 或 private)或不存在的属性调用 unset() 时,__unset() 会被调用。
  9. __sleep(),执行serialize()时,先会调用这个函数
  10. __wakeup(),执行unserialize()时,先会调用这个函数
  11. __toString(),类被当成字符串时的回应方法
  12. __invoke(),当尝试以调用函数的方式调用一个对象时,invoke()方法会被自动调用
  13. __set_state(),调用var_export()导出类时,此静态方法会被调用。
  14. __clone(),当对象复制完成时调用
  15. __autoload(),尝试加载未定义的类
  16. __debugInfo(),打印所需调试信息

Comment