• 喜欢前端以及PHP的朋友们可以加PHP同好会QQ群 点击加入qq群
  • 最近在写一个项目---"小A微信托管平台",大家可以去帮忙测试一下!功能在不断完善中,敬请关注!点击进入
  • 本站使用了PHP8.1与HTTP2.0协议,速度简直超级快有木有?

php魔术常量与魔术方法复习

后端 Mr.Adam 8年前 (2017-04-13) 2534次浏览 已收录 0个评论

php 魔术常量与魔术方法复习

php 魔术常量与魔术方法复习

最近研究 js 与前端方面的东西比较多,倒是把 php 的一些东西都忘了,现在回归根本再来复习一下.

魔术常量

__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
__DIR__ 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。
__FUNCTION__ 函数名称
__CLASS__ 类的名称
__TRAIT__ Trait 的名字
__METHOD__ 类的方法名
__NAMESPACE__ 当前命名空间的名称

类的魔术方法

__construct 构造方法(当类被实例化时会执行)
__destruct 析构方法(当类被销毁时自动调用)
__set 当设置对象的一个不可见属性时,自动调用
__get 当读取对象的一个不可见属性时,自动调用并返回值
__isset 当用 isset,或 empty 判断一个不可见属性时,自动调用
__unset 当使用 unset 一个不可见属性时,自动调用
__call 当调用一个不可访问的方法时,__call 会自动调用
__clone 当复制完成时,如果有 __clone 方法,则新创建的对象中 __clone 方法会被调用
__toString __toString 方法用于一个类被当成字符串时应怎样回应
__invoke 当尝试以调用函数的方式调用一个对象的时候,自动调用
__debugInfo 当存在 __debugInfo 方法时,var_dump 这个对象的时候,不会打印其他属性与方法
__sleep 当使用 serialize()方法序列化一个对象时,会检测该类是否有 __sleep 方法,
如果有,该方法会先被调用,之后再进行序列化
__wakeup 当使用 unserialize()反序列化一个对象时,会检测该类是否有 __wakeup 方法,
如果有,该方法会先被调用,预先准备对象需要的资源,例如重建数据库链接,或执行其他初始化操作
__set_state 当调用 var_export() 导出类时,此静态 方法会被调用

小 A 空间 , 版权所有丨如未注明转载 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明php 魔术常量与魔术方法复习
喜欢 (3)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址