盘点PHP最实用的5大魔术方法及其功能作用

PHP是一门非常优秀的脚本编程语言,与其它编程语言有一个非常不同的地方,那就是魔术方法,PHP有非常多的魔术方法用于实现一些非常不可思议的功能。

啥是PHP的魔术方法?

在定义类时,以两个下划线字符(__)开头的方法都是魔术方法,而且方法名都是PHP预先定义好的,每一个都拥有魔术般的功能。我们自己在定义方法时,不建议使用两个下划线字符开头,这样会与PHP的魔术方法混淆。

PHP有哪些魔术方法?

PHP提供了非常多的魔术方法,比如: __construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone() 等等,今天我来给大家说说其中非常实用的5个。

第1:__construct()构造方法

执行时机:在使用new关键字使用类实例化一个对象时自动执行

功能作用:通常用于对对象的属性进行初始化

用法示例:

盘点PHP最实用的5大魔术方法及其功能作用

如何记住:construct 含义:构成;修建;建造;读音: [kənˈstrʌkt] ,可以理解为构造对象的方法,在构造对象时自动执行。

第2:__destruct()析构方法

执行时机:在对象被销毁(unset或PHP执行结束)时自动执行

功能作用:通常用于释放对象占用的第三方资源(如:数据库)

用法示例:

盘点PHP最实用的5大魔术方法及其功能作用

如何记住:destruct含义:破坏;破坏的;读音: [dɪ'strʌkt]

第3:__toString()转换字符串

执行时机:在对象被当成字符串使用时自动执行

功能作用:兼容对象的字符串调用形式,根据用户需求显示出对象的字符串形态

用法示例:

盘点PHP最实用的5大魔术方法及其功能作用

如何记住:toString含义:to到;向,朝着; String字符串; 读音: [tu,tə] [strɪŋ]

第4:__invoke()函数调用方法

执行时机:在对象被当成函数使用时自动执行

功能作用:兼容对象的函数调用形式,允许用户像使用函数一样使用对象

用法示例:

盘点PHP最实用的5大魔术方法及其功能作用

如何记住:invoke含义:援引;乞灵;祈求;读音: [ɪnˈvoʊk]

第5:__clone()克隆方法

执行时机:在克隆(clone)对象时自动执行

功能作用:在克隆对象时可以同时执行一些其它操作,甚至可以阻止对象被克隆

用法示例:

盘点PHP最实用的5大魔术方法及其功能作用

如何记住:clone含义:复制;克隆;读音: [kloʊn]

总述,PHP提供了很多这样的魔术方法,他们都有神奇的功能,在做相应的操作时都会自动执行,由于时间关系我们本次就只能盘点PHP这5大魔术方法及其功能作用,如果对本次总结的魔术方法或其它的PHP魔术方法有疑惑也可以随时来源码时代一起讨论交流哦。

php

相关推荐