PHP中的常量

摘要

常量作为一种特殊的数据存储容器,有着区别于变量的特性。其中,最为显著的特性就是常量在程序运行期间值始终保持不变。

在不的编程语言中,常量的取值也是不一样的。从PHP5.3开始,常量的定义可以使用define函数和const关键字。

常量作为一种特殊的数据存储容器,有着区别于变量的特性。其中,最为显著的特性就是常量在程序运行期间值始终保持不变。

在不的编程语言中,常量的取值也是不一样的。从PHP5.3开始,常量的定义可以使用define函数和const关键字

PHP中,常量的特性如下:

1、常量只能通过define函数和const关键字定义;

2、常量前面没有美元符号,通常全部使用大写字母;

3、常量的使用无作用域限制;

4、常量定义后不能修改和取消;

5、常量的值只能是标量(数字、字符串、布尔值),针对const关键字。

我们注意到,define是一个函数,而const是一个关键字,这里我们就要区别一下这二者之间的区别了。

从目前来看,define函数和const关键字区别如下:

1、const只能接受标量,而define函数可以接受表达式,不过从PHP5.6之后const也可以接受常量的表达式;

2、const定义的常量大小写敏感,而define函数可以通过第三个参数来指定大小写是否敏感;

3、const是在代码编译时定义一个常量,而define函数是在代码运行时才定义一个常量,这就导致const不能用在条件判断语句中;

4、const可以在class和interface中使用 ,而define函数不可以。

有人可能会产生一个疑问,为什么PHP要在后续版本中引入const关键字来定义常量。原因在于处理机制上,如果程度中大量使用define函数定义常量会严重影响PHP整个程度的运行效率,而const则可以改变这一现状。

随着PHP版本的升级,define函数和const关键字也在慢慢变更的自己的历史使命。

shaw

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: