zoukankan      html  css  js  c++  java
  • PHP的八个魔术常量

    1. 什么魔术常量


    预定义常量:预定义常量就是PHP内置的常量,预先定义好的

    PHP有很多预定义常量,比如:PHP_VERSION(版本号)、PHP_OS(操作系统)。

    这些普通的预定义常量在程序中的值是固定的,不会因为在不同的位置而改变自身的值。

    在PHP有八个特殊的预定义常量,它们的值会随着它们在代码中的位置改变而改变,我们称之为魔术常量。

    2. PHP的8个魔术常量


    序号 魔术常量 示例 描述
    1 __LINE__ 5 返回魔术常量输出时所在的行号
    2 __FILE__ E:www1.php 返回文件路径(绝对路径)
    3 __DIR__ E:www 返回文件所在的目录,当前文件位置:E:www1.php
    4 __FUNCTION__ taskList 返回函数名称,区分大小写,不在函数中时返回空字符串
    5 __CLASS__ appcontrollerUser 返回当前所在类名,包含命名空间,区分大小写
    6 __METHOD__ appcontrollerUser:test 返回当前所在方法名,包含命名空间,区分大小写
    7 __NAMESPACE__ appcontroller 返回当前命名空间,区分大小写
    8 __TRAIT__ appcontrollerPerson 返回当前所在Trait名,包含命名空间,区分大小写

    3. 使用示例


    前四个魔术常量

    <?php
    
    echo __LINE__;//3
    
    echo __FILE__;//E:www1.php
    
    echo __DIR__;//E:www
    
    echo userList();//userList
    
    function userList()
    {
    	echo __FUNCTION__;
    }
    

    后四个魔术常量

    <?php
    
    namespace appcontroller;
    
    trait Person {
        public static function demo()
        {
            echo __TRAIT__;//appcontrollerPerson
        }
    }
    
    class User
    {
    	use Person;
    
    	public static function test()
    	{
    		echo __CLASS__;//appcontrollerUser
    
    		echo __METHOD__;//appcontrollerUser::test
    	}
    }
    
    User::test();
    User::demo();
    
    echo __NAMESPACE__;//appcontroller
    
  • 相关阅读:
    Flex动画
    八大排序算法
    Android switch语句“case expressions must be constant expressions”
    MySQL修改root密码的多种方法
    Android中ListView控件onItemClick事件中获取listView传递的数据
    超详细Android接入支付宝支付实现,有图有真相
    Android蓝牙开发---与蓝牙模块进行通信
    Leecode no.19 删除链表的倒数第 N 个结点
    玩转java静态/动态代理
    Leecode no.198. 打家劫舍
  • 原文地址:https://www.cnblogs.com/cfmy/p/13406449.html
Copyright © 2011-2022 走看看