首页 > 编程语言 >php魔术常量

php魔术常量

时间:2023-07-24 16:24:20浏览次数:38  
标签:__ PHP 常量 trait 魔术 新加 php 方法

PHP 向它运行的任何脚本提供了大量的预定义常量。

不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。

有八个魔术常量它们的值随着它们在代码中的位置改变而改变。

 

1、__LINE__

文件中的当前行号。

 

2、__FILE__

文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。

自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。

3、__DIR__

文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。

它等价于 dirname(__FILE__)。除非是根目录,否则目录中名不包括末尾的斜杠。(PHP 5.3.0中新增)

 

4、__FUNCTION__

函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。

 

5、__CLASS__

类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。

在 PHP 4 中该值总是小写字母的。类名包括其被声明的作用区域(例如 Foo\Bar)。注意自 PHP 5.4 起 __CLASS__ 对 trait 也起作用。当用在 trait 方法中时,__CLASS__ 是调用 trait 方法的类的名字。

 

6、__TRAIT__

Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 traits。

Trait 名包括其被声明的作用区域(例如 Foo\Bar)。

从基类继承的成员被插入的 SayWorld Trait 中的 MyHelloWorld 方法所覆盖。其行为 MyHelloWorld 类中定义的方法一致。优先顺序是当前类中的方法会覆盖 trait 方法,而 trait 方法又覆盖了基类中的方法。

 

7、__METHOD__

类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。

8、__NAMESPACE__

当前命名空间的名称(区分大小写)。此常量是在编译时定义的(PHP 5.3.0 新增)。

标签:__,PHP,常量,trait,魔术,新加,php,方法
From: https://www.cnblogs.com/wd404/p/17577544.html

相关文章

  • php超级全局变量
    1、介绍PHP中预定义了几个超级全局变量(superglobals),这意味着它们在一个脚本的全部作用域中都可用。你不需要特别说明,就可以在函数及类中使用。PHP超级全局变量列表:$GLOBALS、$_SERVER、$_REQUEST、$_POST、$_GET、$_FILES、$_ENV、$_COOKIE、$_SESSION2、$GLOBALS$GLOBALS......
  • php类和对象
    php很多语法和java类似,主要区分不同1、类和对象(1)class关键字创建类(2)new关键字创建对象,如果没有参数可以忽略()(3)->作为属性或方法的调用 <?phpclassstu{var$name;functionecho_name($param){echo$param;}}$stu_1=newstu;......
  • php修饰符
    1、finalPHP5新增了一个final关键字。如果父类中的方法被声明为final,则子类无法覆盖该方法。如果一个类被声明为final,则不能被继承。2、static声明类属性或方法为static(静态),就可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。......
  • php运算符
    1、松散比较和严格比较松散比较:使用两个等号 == 比较,只比较值,不比较类型。严格比较:用三个等号 === 比较,除了比较值,也比较类型。2、类型转换(1)字符串参与比较时,自动转为数值类型,比如'12'==12.03、php支持++和--4、运算符对数值运算的处理5、支持三元运算符6、逻辑运......
  • php控制结构
    1、if结构if(条件){if条件成立时执行的代码;}elseif(条件){elseif条件成立时执行的代码;}else{条件不成立时执行的代码;}2、switch<?phpswitch(n){caselabel1:如果n=label1,此处代码将执行;break;caselabel2:如果n=label2,此......
  • php - 支持word上传的富文本编辑器
    ​ 在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper。通过知乎提供的思路找到粘贴的原理,通过TheViper找到粘贴图片的方法。其原理为一下步骤:监听粘贴事件;【用于插入图片】获取光标位置;【......
  • Peachpie升级了,体现PHP跨平台优越性
    在对Peachpie的用法进行了一些工作之后,现在回到了在编译器本身实现的核心功能。目前正在更加接近完成项目的“初衷”—能够运行完整的现实世界的应用程序PHP会话<?phpsession_start();//thisactuallyinitializes$_SESSIONfromISessionserviceecho......
  • Python【11】__getitem__ 魔术方法
    让方法能使用[key]返回值或做操作参考(侵删):https://blog.csdn.net/Norsaa/article/details/105564931......
  • 如何配置Apache24+PHP8+Mysql8包括安装
    一、PHP版本的选择与安装配置PHP官方PHP下载页面选择自己想要的版本点击Zip链接即可下载,x64是操做系统的位数,ThreadSafe是线程安全版本(多线程版Apache服务器使用),NoneThreadSafe是非线程安全版(单线程版IIS服务器使用)然后解压出来后把Apache24根目录的php.ini-developm......
  • JetBrains PhpStorm 2022 (Win&Mac) 中文激活版
    JetBrainsPhpStorm是一款由JetBrains开发的集成开发环境IDE),专门用于PHP语言开发。它提供了丰富的功能和工具,帮开发人员提高效率并编写高质量的PHP代码。以下是JetBrainsPhpStorm的一些常见特点和功能:代码编辑器:JetBrainsPhpStorm提供了强大的代码编辑器,支持语法高亮、代码补、代......