登录  /  注册
PHP中的魔术常量是什么
青灯夜游
发布: 2023-04-04 21:06:02
原创
3263人浏览过

魔术(Magic)常量是PHP中预定义的常量,这些常量可以根据它们的使用位置而变化。本篇文章就来带大家认识一下PHP魔术常量,介绍一些常用的PHP魔术常量,希望对大家有所帮助。

PHP中的魔术常量是什么

魔术常数以两个下划线(__)开头,以两个下划线(__)结束。下面我们就来介绍一些常用的PHP魔术常量。

__LINE__

__LINE__常量会返回文件的当前行号。例:

<?php
header("content-type:text/html;charset=utf-8");
echo "当前行数:" . __LINE__ . "<br>"; // 第3行
echo "当前行数:" . __LINE__ . "<br>"; // 第4行
echo "当前行数:" . __LINE__ . "<br>"; // 第5行
?>
登录后复制

输出:

2.jpg

__FILE__

__FILE__常量返回正在执行的PHP文件的完整路径和名称;如果在include中使用,则返回包含文件的名称。

<?php
header("content-type:text/html;charset=utf-8");
// 显示此文件的绝对路径
echo "此文件的完整路径是: " . __FILE__;
?>
登录后复制

输出:

3.jpg

__DIR__

__DIR__常量返回文件的目录。如果在include中使用,则返回包含文件的目录。例:

<?php
header("content-type:text/html;charset=utf-8");
// 显示此文件的目录
echo "此文件的目录是: " . __DIR__;
?>
登录后复制

输出:

4.jpg

__FUNCTION__

__FUNCTION__常量返回当前函数的名称。例:

<?php
header("content-type:text/html;charset=utf-8");
function myFunction(){
    echo  "函数名是:" . __FUNCTION__;
}
myFunction(); 
?>
登录后复制

输出:

5.jpg

__CLASS__

__CLASS__常量返回当前类的名称。

<?php
header("content-type:text/html;charset=utf-8");
class MyClass
{
    public function getClassName(){
        return __CLASS__;
    }
}
$obj = new MyClass();
echo $obj->getClassName(); 
?>
登录后复制

输出:

6.jpg

__METHOD__

__METHOD__常量返回当前类方法的名称。

<?php
header("content-type:text/html;charset=utf-8");
class Sample
{
    public function myMethod(){
        echo __METHOD__;
    }
}
$obj = new Sample();
$obj->myMethod(); 
?>
登录后复制

输出:

7.jpg

__NAMESPACE__

__NAMESPACE__常量返回当前命名空间的名称。

<?php
// 定义代码在 'MyNamespace' 命名空间中
namespace MyNamespace;
class MyClass
{
    public function getNamespace(){
        return __NAMESPACE__;
    }
}
$obj = new MyClass();
echo $obj->getNamespace(); // Displays: MyNamespace
?>
登录后复制

输出:

8.jpg

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

以上就是PHP中的魔术常量是什么的详细内容,更多请关注php中文网其它相关文章!

相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 技术文章
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2023 //m.sbmmt.com/ All Rights Reserved | 苏州跃动光标网络科技有限公司 | 苏ICP备2020058653号-1

 | 本站CDN由 数掘科技 提供

登录PHP中文网,和优秀的人一起学习!
全站2000+教程免费学