在PHP中常量被分为自定义常量和系统常量,通常常量全部用大写
常量定义后默认是全局的,在脚本的任何地方都可以使用
1、自定义常量是通过使用PHP中的define()定义
使用define() 来定义变量
<?php $p = "PII"; define("PI",3.14); //定义变量并赋值,第一个参数是常量名,第二个是常量值 define($p,3.14); echo PI*3*3; echo "<br />"; echo PII; ?>
使用define()函数定义不区分大小写的常量:define("PII",3.14,true) 默认是false 改为true
2、系统常量,系统常量是PHP已经定义好的常量,可以直接拿来用,常见的系统常量如下:
1、__FILE__:php程序文件名,可以获取当前文件在服务器的位置 2、__LINE__:PHP程序文件行数,可以告诉我们当前代码在第几行 3、PHP_VERSION:当前解析器的版本号,获取当前PHP解析器的版本号 4、PHP_OS:执行当前PHP版本的操作系统名称。可以告诉我们服务器所用的操作系统名称
<?php echo __FILE__; echo "<br />"; echo __LINE__; echo "<br />"; echo PHP_VERSION; echo "<br />"; echo PHP_OS; echo "<br />"; ?> 运行结果: index.php 4 5.3.29 Linux
3、常量的取值
可以直接使用常量名
也可以通过函数constant来去常量值
<?php //定义圆周率的两种取值 define("PI1",3.14); define("PI2",3.142); //定义值的精度 $height = "中"; //根据精度返回常量名,将常量变成了一个可变的常量 if($height == "中"){ $p = "PI1"; }else if($height == "低"){ $p = "PI2"; } $r=1; $area = constant($p)*$r*$r; echo $area; ?>
4、判断一个常量是否被定义
通过一个defined函数来判断常量是否被定义(已经被命名)
define("PI1",3.14)
var_dump("PI1") 常量已经被使用,返回的是布尔值false