PHP常用的七种魔术常量的应用

魔术常量通常是用来确定代码中的输出位置,所有的魔术常量都是为了达到这种目的。特别是在程序需要打上log日志的时候,魔术变量变得尤其重要。下面介绍常见的七种魔术常量。

__CLASS__:指常量所指向的类的名称。该常量通常指类被定义的名称,而不是实例化时的名称。例如:在类的继承中子类和父类的的构造方法中都调用了__CLASS__,那个__CLASS__表示的还是在类中类本身的名称。

__FILE__:指常量所指向文件的文件名称。

__LINE__:通常和__FILE__联合使用,在用来输出所在代码中的位置行。例如:error_log('log打在文件'.__FILE__.'中的第'.__LINE__.'行');

注意:__FILE__和__LINE__两者至于当前正在执行的文件有关,而不需要去考虑别的文件是否包含或者依赖该文件。

__DIR__:作用于函数dirname(__FILE__)比较类似,返回的是文件所在位置的绝对目录。在程序中,使用绝对路径比使用相对路径运行速度要快得多,尤其是当文件中包含脚本程序时。

__FUNCTION__和__METHOD__:通常利用这两个魔术常量可以得到函数名或方法名,情况运行时,应尽可能地在程序是中使用这些魔术常量而不是对函数名称使用硬编码。比如像下面:int a=2,b=2;硬编码:if(a==2) return false;非硬编码 if(a==b) return true; 

__NAMESPACE__:当前的命名空间。

如果要对程序进行调试,学会使用一些常见的魔术常量是最基本的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,928评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,622评论 18 399
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,126评论 6 342
  • 阳光很好 就算自己不发光 在阳光也是有一层光环绕着我
    猴猴吼吼厚厚阅读 1,513评论 0 1
  • 题目输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指...
    no_one11阅读 2,187评论 0 0

友情链接更多精彩内容