常量概念
常量:“常量”的广义概念是:‘不变化的量’(例如:在计算机程序运行时,不会被程序修改的量;数学函数中的某一个量,例如每一个具体的圆的半径、直径数值;物理学中的靠近地面的重力加速度;真空中的光速数值;不同的微粒的各自的质量)换言之,常量,在计算机技术方面虽然是为了硬件、软件、编程语言服务,但是它并不是专门为硬件、软件、编程语言而引入的概念。
常量可区分为不同的类型:
如:25、0为整型常量,
6.8为实型常量,
‘a’、‘b’为字符常量。
常量一般从其字面形式即可判断。这种常量称为字面常量或直接常量。在讨论函数的值随着自变量的关系发生(变大或者变小)改变时,函数中往往是有一个或者一个以上的常量,人们着重研究这些变化程度的规律, 往往是容易寻找到事物发展的规律在大脑中的正确反映。
定义方法
1.PHP中,可以使用函数define()来定义常量:
<?php
define('PI', 3.14159); //定义一个名为PI的常量
echo PI; //输出:3.14159
?>
2.除了使用函数define()之外,还可以使用PHP关键字const来定义常量
<?php
//以下代码需在PHP 5.3.0及之后的版本中运行
const PI = 3.14159; //使用const关键字定义一个名为PI的常量
echo PI; //输出:3.14159
?>
两者的区别:
1.由于函数define()定义的常量是在执行define()函数时定义的,因此可以在函数内、循环内、if语句内等函数能够被调用的任何地方使用define()函数定义常量。
与define()不同的是,由于const关键字定义的常量是在编译时定义的,因此const关键字定义常量必须处于最顶端的作用区域。这也就意味着不能在函数内、循环内以及if语句之内用const来定义常量。
2.虽然关键字const和define()定义的常量值都只能为null或标量数据(boolean,integer,float和string类型)以及resource类型(不推荐定义resource类型的常量,否则可能出现无法预知的结果)。不过,由于关键字const定义常量是在编译时定义的,因此const关键字定义的常量值的表达式中不支持算术运算符、位运算符、比较运算符等多种运算符,而这些运算符在define()函数定义常量时都是可以直接使用的。
3.对字符大小写敏感的支持差异,const关键字定义常量却没有提供类似的功能。