欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php魔术方法与魔术常量

程序员文章站 2022-05-25 09:16:57
...
当我们学习 对象的时候,经常会听到老师们说世界万物皆对象,那么也一定会听到魔术方法和魔术常量等概念,那我们在学习温习的时候自己随手总结的:

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__(所在的函数名), 的可以翻阅手册