php中的魔术常量笔记

原创 PHP笔记  2017-03-21 17:57  阅读 718 views 次

php有八个魔术常量,它们的值会随着它们在代码中的位置改变而改变,这些特殊的php常量不区分大小写。

  • __LINE__:文件中的当前行号。
  • __FILE__:当前文件的绝对路径,含文件名。
  • __DIR__:当前文件的绝对路径,不包含文件名。
  • __FUNCTION__:返回当前函数或方法的名称。
  • __CLASS__:返回当前的类名(包含该类的作用区域或命名空间)。
  • __TRAIT__:返回当前的trait名称。
  • __METHOD__:返回当前的方法名和类名。
  • __NAMESPACE__:返回当前文件的命名空间的名称。

1、__LINE__魔术常量

返回文件中的当前行号。

实例:

<?php
header("Content-Type: text/html;charset=utf-8"); //解决中文乱码
echo "这是第".__LINE__."行";
?>

运行结果:这是第4行

2、__FILE__魔术常量

返回文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名。php 4.0.2 起,__FILE__ 总是包含一个绝对路径。

实例:

<?php
header("Content-Type: text/html;charset=utf-8"); //解决中文乱码
echo "'我'在". __FILE__. "的第".__LINE__."行里";
?>

运行结果:'我'在C:\wamp\www\php\2.php的第4行里

3、__DIR__魔术常量

返回文件所在的目录,如果用在被包括文件中,则返回被包括的文件所在的目录。只有在根目录末尾才会有斜杠(PHP 5.3.0中新增)。

实例:

<?php
header("Content-Type: text/html;charset=utf-8"); //解决中文乱码
echo "'我'在". __DIR__."目录里";
?>

运行结果:'我'在C:\wamp\www\php目录里

4、__FUNCTION__魔术常量

返回当前函数的名称,php 5起,返回函数的名称区分大小写,在php 4中总是小写字母。

实例:

<?php
header("Content-Type: text/html;charset=utf-8"); //解决中文乱码
function funA() {
echo "函数名为:". __FUNCTION__ ;
}
funA();
?>

运行结果:函数名为:funA

5、__CLASS__魔术常量

返回当前的类名,PHP 5 起该常量返回的类名区分大小写,在 PHP 4 中总是小写字母。自 PHP 5.4 起,__CLASS__ 对 trait 也起作用。当用在 trait 方法中时,__CLASS__ 是调用 trait 方法的类的名字。

实例:

<?php
header("Content-Type: text/html;charset=utf-8"); //解决中文乱码
class A{//声明类
function fun() {//方法
echo "类名为:".__CLASS__;
}
}
$a= new A();//创建对象
$a->fun();
?>

运行结果:类名为:A

6、__TRAIT__魔术常量

还未学习!

本文地址:https://www.ggbiji.com/php-magic-constant.html
版权声明:本文为 PHP笔记 原创/整理文章,欢迎分享,转载请注明出处!

发表评论


表情