PHP中的常量
常量
概念
- 是一种在程序运行当中,不可改变的量
- 常量一旦定义,通常数据就不可以改变了。
定义形式
在PHP中常量有两种定义方式(5.3版本后)
-
使用定义常量的函数:define(‘常量名’,常量值);
define('wo',3.14);
-
5.3版本后才有的:const 常量名 = 值;
const wo = 3;
常量的命名规则
- 常量不需要使用“$”符号,一旦使用系统就会认为是变量;
- 常量的名字组成由字母、数字和下划线组成,不能以数字开头;
- 常量的名字通常是以大写字母为主,以区别于变量;
- 常量命名的规则比变量要松散,可以使用一些特殊字符,该方式只能使用define定义;
如:
define('-_-','smile');
//特殊符号开头,定义特殊常量
const -_- = 'smile';
//错误
- define和const定义的常量有区别:在于权限区别。
- 定义常量默认是不区分大小写,但改变define函数的第三个参数可以达到区分大小写。
使用形式
常量的使用与变量一样,只是不可改变值,所以在定义的时候必须赋值。
-
直接使用echo等语句输出;
echo wo;
-
当访问特殊名字的常量时,需要用到一个访问常量的函数:constant(‘常量名’);
//echo -_-;
//特殊符号不能直接使用。
echo constant('-_-');
//成功输出。
常量和变量的使用场景
- 凡是数据会可能变化的,肯定用变量。
- 数据不一定会变的,可以使用常量或者变量(但还是建议使用变量)。
- 数据不允许被修改的,一定使用常量。
- 变量可以通过unset函数删除释放内存,但常量不可以。当运行一个比较长的脚本时,常量会长时间的占用大量内存(相对的)。
系统常量
定义
系统帮助用户定义的常量,用户可以直接使用。
常用的几个系统常量
PHP_VERSION:PHP版本号
PHP_INT_SIZE:整数integer值的字长
PHP_INT_MAX:整数integer值的最大值
魔术常量
定义
在PHP中还有一些特殊的常量,他们有双下划线开始+常量名+双下划线结束,这种常量称为系统魔术常量:常量的值通常会跟着环境变化,但是用户改变不了。
常用的一些魔术常量
__DIR__:当前被执行的脚步所在电脑的绝对路径;
__FILE__:当前被执行的脚步所在的电脑的绝对路径(带自己文件的名字)
__LINE__:当前所示的行数
__NAMESPACE__:当前所属的命名空间
__CLASS__:当前所属的类
__METHOD__:当前所属的方法