首页  >  文章  >  后端开发  >  php魔术方法与魔术常量

php魔术方法与魔术常量

WBOY
WBOY原创
2016-06-23 13:47:45991浏览

当我们学习 对象的时候,经常会听到老师们说世界万物皆对象,那么也一定会听到魔术方法和魔术常量等概念,那我们在学习温习的时候自己随手总结的:

php中常见的魔术方法有哪些呢?

1)魔术方法都以 __双下划线开头!

例如:

__construct();

__destruct();

__clone();

__sleep();

__wakeup();

__get()

__set();

__isset();

__unset();

__call();

__callStatic()

注意:也许你也许会说__开头的都是魔术方法吗?__autoload()每个类都可有,所以我暂时理解为魔术函数吧!希望高手补充

2)

__invoke(),当将一个对象当作函数调用时,会自动调用该对象的__invoke()这个魔术方法!调用对象,其实就是调用对象的__invoke()方法。前提__invoke()需要存在!

可以联想到匿名函数,也就是所谓的闭包函数!那么想一想动态函数,还有$ object = new A; $object['a']?

3)__tostring,

当将对象当作字符串使用时,会调用该方法,该方法的返回值,就是对象转成字符串的结果!

通常使用方法:配合序列话使用

接下来说一说魔术常量:

__CLASS__.__METHOD__.__FILE__, __LINE__, __DIR__, __FUNCTION__(所在的函数名), 的可以翻阅手册







声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn