什么是常量
常量被定义以后,在脚本的其他任何地方都不会改变。在PHP中,常量由英文字母、下划线和数字组成。与变量相同的是,数字不能作为常量的开头。注:常量之前不需要美元符号$来修饰。
如何定义一个常量
在PHP中,使用define(name,value,[case_insentitive])函数来定义一个常量。该函数分为三个部分:其中name为常量的名字,value为常量的值,最后一项为大写不敏感,可选参数。该参数为true的时候表示该常量对大小写不敏感,为false时表示该常量对大小写敏感。默认为false。假设定义圆周率PI为3.14的话,可以写为define(“PI”,3.14);该函数也可以定义字符串常量。define(”A“,”Hello World“);注:一般的常量都用大写字母表示,这是一个不成文的约定。定义常量时也可以将一个字符串赋值给一个变量后在对该变量应用define()函数。例如:$p="PI";define($p,3.14);这样也是可行的。
常量的作用范围
常量一旦定义,即为全局变量,生存周期为整个程序。这也就意味着常量在函数内外都可以使用。
常量的作用
常量存在的意义就是避免重复定义而导致改变了不应该改变的值。在程序开发中,总有一些不能被替换掉的值,此时便使用常量定义他们,以免用变量声明后,不小心重复定义而覆盖了原有的数值。是用常量还可以减少工作量,对于日后批量修改代码提供了帮助。
PHP中的系统常量
在 PHP中,有一些常量是事先定义好的,拿过来就可以用。比如常见的几个系统常量:
__FILE__:PHP文件名。他可以告诉我们当前页面在服务器中的物理位置。
__LINE__:PHP程序文件行数。它的作用是告诉我们当前代码在第几行。
PHP_VERSION:当前解析器的版本号。他可以告诉我们当前PHP解析器是哪个版本的。
PHP_OS:操作系统版本。他可以告诉我们当前是在什么操作系统上运行PHP。
如何获得常量的值
获取常量的取值有两种,第一种是直接用常量名,第二种是用constant(常量名)函数。这两者本质上没有任何区别。但是后者可以动态的输出不同常量,更加灵活。注:怎么理解这个”更加灵活“?
慕课上有一段代码如下。
<?php
$p="";
//定义圆周率的两种取值
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;
?>可以看出,$area的计算中使用了constant()函数。$height取值不同,导致$p对应的常量取值也不同。如果不使用constant函数的话,对于$area的计算代码就要写两行,从而增加了读程序的难度。
如何判断常量是否被定义
在PHP中,常量是不能被重复定义的。defined(常量名)函数可以帮助我们判断常量是否已经被定义过。如果该常量被定义过,则会返回布尔类型的true,否则返回false。
本文介绍了PHP中常量的概念、定义方式及其应用场景,并列举了多个实用的例子。此外还讲解了系统预定义常量以及如何判断常量是否已被定义。
1051

被折叠的 条评论
为什么被折叠?



