PHP 常量

  • PHP常量

    常量是简单值的名称或标识符。在执行脚本期间,常量值不能更改。默认情况下,常量区分大小写。按照惯例,常量标识符总是大写的。常量名称以字母或下划线开头,后跟任意数量的字母,数字或下划线。如果已定义常量,则永远不会更改。要定义常量,必须使用define()函数并检索常量的值,您只需指定其名称即可。与变量不同,常量不需要具有$符号。如果希望动态获取常量的名称,也可以使用函数constant()来读取常量的值。
  • constant()函数

    如名称所示,此函数将返回常量的值。当您想要检索常量的值但是您不知道它的名称时,这很有用,即它存储在变量中或由函数返回。
    <?php 
    define("MINSIZE", 50);
       
    echo MINSIZE;
    echo constant("MINSIZE"); // 跟前一行相同
    ?>
    
    尝试一下
    常量中只能包含标量数据(布尔值,整数,浮点数和字符串)。
  • 常量和变量之间的差异是

    • 没有必要在常量之前写一个美元符号($),而在变量中必须写一个美元符号。
    • 常量不能通过简单赋值定义,它们只能使用define()函数定义。
    • 可以在任何地方定义和访问常量,而不考虑变量作用域规则。
    • 一旦设置了常量,不能再重新设置相同名称的常量。
    有效和无效的常量名称
    <?php 
    // 有效的名称
    define("ONE",     "first thing");
    define("TWO2",    "second thing");
    define("THREE_3", "third thing");
    define("__THREE__", "third value");
    
    // 无效的名称
    define("2TWO",    "second thing"); 
    ?>
    
  • PHP魔术常量

    PHP为其运行的任何脚本提供了大量预定义常量。有五种魔法常数会根据它们的使用位置而改变。例如,__LINE__的值取决于它在脚本中使用的行。这些特殊常量不区分大小写,如下所示,下面给出了一些“神奇的”PHP常量
    魔术常量 描述
    __LINE__ 文件的当前行号。
    __FILE__ 文件的完整路径和文件名。如果在include中使用,则返回包含文件的名称。从PHP 4.0.2开始,__ FILE__始终包含绝对路径,而在旧版本中,它在某些情况下包含相对路径。
    __FUNCTION__ 函数名称。(在PHP 4.3.0中添加)从PHP 5开始,此常量返回声明的函数名称(区分大小写)。在PHP 4中,它的值总是小写的。
    __CLASS__ 类名称。(在PHP 4.3.0中添加)从PHP 5开始,此常量返回声明的类名(区分大小写)。在PHP 4中,它的值总是小写的。
    __METHOD__ 类方法名称。(在PHP 5.0.0中添加)方法名称在声明时返回(区分大小写)。