PHP常量的定义和使用(附带实例)
PHP 常量是一个简单值的标识符(名称)。如同其名称所暗示的,在脚本执行期间不能改变该值(除了魔术常量,魔术常量其实不是常量)。
PHP 常量默认为对大小写敏感。传统的常量标识符总是采用大写形式。
PHP 常量名称和其他任何 PHP 标签遵循同样的命名规则。合法的常量名称以字母或下划线开始,后面跟着任何字母、数字或下划线。
合法的常量名称如下:
非法的常量名称如下:
下面的常量定义是合法的,但应该避免(自定义常量不要以“__”开头):
常量的定义很简单,但是需要注意以下事项:
有 6 个魔术常量会根据它们使用的位置而改变,例如“__LINE__”的值依赖它在脚本中所处的行。这些特殊的常量不区分大小写,如下表所示:
【实例】魔术常量。
PHP 常量默认为对大小写敏感。传统的常量标识符总是采用大写形式。
PHP 常量名称和其他任何 PHP 标签遵循同样的命名规则。合法的常量名称以字母或下划线开始,后面跟着任何字母、数字或下划线。
PHP定义常量
PHP 中通过 define() 函数实现常量的定义,其基本语法如下:define("常量名称" ,常量值[,可选参数取值为true或false])
合法的常量名称如下:
define("NAME","zhangsan"); define("NAME2","zhangsan19"); define("NAME_2","zhangsan1984");
非法的常量名称如下:
define("2NAME","zhangsan");
下面的常量定义是合法的,但应该避免(自定义常量不要以“__”开头):
define("__NAME__","zhangsan1984");
常量的定义很简单,但是需要注意以下事项:
- 常量前面没有“$”;
- 定义常量以后,不能重新定义常量或取消定义;
- 常量是全局的,可以在脚本的任何位置引用。
PHP引用常量
【实例】引用常量。<?php define("PI",3.1415926); $r=5; $area=PI*$r*$r; echo "半径为",$r,"的圆的面积是",$area; ?>运行结果为:
半径为5的圆的面积是78.539815
PHP魔术常量
PHP 向它运行的所有脚本提供了大量的预定义常量。不过,很多常量是由不同的扩展库定义的,只有在加载了这些扩展库之后才会出现,或者在编译时已经将这些常量包括进去了。有 6 个魔术常量会根据它们使用的位置而改变,例如“__LINE__”的值依赖它在脚本中所处的行。这些特殊的常量不区分大小写,如下表所示:
魔术常量 | 名称 | 说明 |
---|---|---|
__LINE__ | 行号 | 文件中的当前行号 |
__FILE__ | 文件名 | 文件的完整路径和文件名 |
__FUNCTION__ | 函数名 | 函数被定义时的名称(区分大小写) |
__CLASS__ | 类名 | 类名称,返回该类被定义时的名称(区分大小写) |
__METHOD__ | 方法名 | 返回该方法被定义时的名称(区分大小写) |
__DIR__ | 目录名 | 返回当前脚本的目录 |
【实例】魔术常量。
<?php class magic{ function showMagic(){ echo "当前行号为"._ _LINE_ _."<br>"; echo "当前文件所在路径"._ _FILE_ _."<br>"; echo "当前函数名称"._ _FUNCTION_ _."<br>"; echo "类名为"._ _CLASS_ _."<br>"; echo "方法名为"._ _METHOD_ _."<br>"; echo "目录名为"._ _DIR_ _."<br>"; } } $test=new magic(); $test->showMagic(); ?>运行结果为:
当前行号为12
当前文件所在路径D:\phpstudy_pro\WWW\test.php
当前函数名称showMagic
类名为magic
方法名为magic::showMagic
目录名为D:\phpstudy_pro\WWW