27岁,山西运城人,职业电商经理人,前端开发工作者,从事过网站建设、网络推广、SEO、SEM、信息流推广、二类电商、网络运维、软件开发,等相关电商工作,经验较为丰富,小米技术社区致力于为广大从事Web前端开发的人员提供一些力所能及的引导和帮助 ...[更多]
E-mail:mzze@163.com
Q Q:32362389
W X:xiaomi168527
27岁,山西运城人,职业电商经理人,网络工程师兼运维,从事过运营商网络建设,企业网络建设、优化。数据中心网络维护等通过,经验丰富,座右铭:当自己休息的时候,别忘了别人还在奔跑。 ...[更多]
大于花一样的年龄,河南郑州是我家,2010年在北京接触团购网,2011年进入天猫淘宝一待就是四年,如今已经将设计走向国际化(ps:误打误撞开始进入阿里巴巴国际站的设计,嘿嘿)五年电商设计,丰富经验,从事过天猫淘宝阿里各项设计,店铺运营,产品拍摄;我将我的经历与您分享是我的快乐!座右铭:越努力越幸运! ...[更多]
E-mail:97157726@qq.com
Q Q:97157726
在整个运行过程中,固定不变的值,常量不能重新定义
(define和const2种方式)
注意:
常量名前没有$符
常量名推荐使用大写
define(常量名,值,[是否区别大小写]) define(常量名,值,true或false); //true表示不区分大小写,默认是false
//true表示不区分大小写,默认是区分大小写的。
const NAME='tom'; echo NAME; //tom
define('%-%','tom'); echo constant('%-%'); //通过constant获取特殊字符作为常量名的常量
if(!defined('NAME')){ define('NAME','berry'); } echo NAME; //berry
答:使用const使得代码简单易读,const本身就是一个语言结构,而define是一个函数。另外const在编译时要比define快很多。
1、const用于类成员变量的定义,一经定义,不可修改。define不可以用于类成员变量的定义,可用于全局常量。
2、const可在类中使用,define不能
3、const不能再条件语句中定义常量
<?php if (...){ const FOO = 'BAR'; // 无效的invalid } if (...) { define('FOO', 'BAR'); // 有效的valid } ?>
4、const采用普通的常量名称,define可以采用表达式作为名称
<?php const FOO = 'BAR'; for ($i = 0; $i < 32; ++$i) { define('BIT_' . $i, 1 << $i); } ?>
5、const只能接受静态的标量,而define可以采用任何表达式
<?php const BIT_5 = 1 << 5; // 无效的invalid define('BIT_5', 1 << 5); // 有效的valid ?>
6、const定义的常量时大小写敏感,而define可以通过第三个参数(为true表示大小写不敏感)来指定大小写是否敏感。
<?php define('FOO', 'BAR', true); echo FOO; // BAR echo foo; // BAR ?>
本站内容均为小米原创,转载请注明出处:小米技术社区>> PHP常量,定义常量的两种方式define和const,以及它们的区别