在PHP中运用define()函数来定义常量。常量的命名也要遵循PHP的命名规则
boolean define(string name,mixed value[,bool case_insensitive]);
第一个参数为字符串类型的常量名。
第二个参数是常量值或表达式。
第三个参数可选,如果是TRUE——不区分大小写,FALSE——区分大小写。预设是区分大小写的
<?php
define("CON_INT",100);
echo CON_INT; //输出100
define("FLO",99.99);
echo FLO; //输出99.99
define('BOO',true);
echo BOO; //输出整数1
define("BOO_FALSE",false);
echo BOO_FALSE; //什么都不输出
define("CONSTANT","HELLO WORLD");
echo CONSTANT; //输出HELLO WORLD
echo constant; //输出constant,报错
define('AA',"NJKHJKHN",true);
echo AA; //输出NJKHJKHN
echo aa; //输出NJKHJKHN
if(defined('CONSTANT')) //注意是difined
echo CONSTANT; //输出HELLO WORLD
注意:如果使用一个没有声明的变量,则变量名会被解析为一个普通字符串,会比直接使用字符串慢8倍左右。
常量和变量的区别:
1:常量前没有$
2:常量只能有define()定义,而不能通过赋值语句定义(这和C++的引用有点像,只能初始化,不能赋值)
3:常量的作用域是全局的
4:常量一旦定义就不能被重新定义或者取消定义,直到脚本运行结束自动释放
5:常量的值只能是标量(标量只有4中:整型,浮点型,字符串型,布尔型)
常量还包括系统中的预定义常量,PHP中的魔术常量
魔术常量:
_FILE_ 当前文件名
_LINE_ 当前行数
_FUNCTION_ 当前函数名
_CLASS_ 当前类名
_METHOD_ 当前对象的方法名