解析php中const与define的应用区别


Posted in PHP onJune 18, 2013

1、const用于类成员变量定义,一旦定义且不能改变其值。define定义全局常量,在任何地方都可以访问。
2、define不能在类中定义而const可以。
3、const不能在条件语句中定义常量

if (...) { 
    const FOO = 'BAR';    // invalid 
} 
but 
if (...) { 
    define('FOO', 'BAR'); // valid 
}

4、const采用一个普通的常量名称,define可以采用表达式作为名称。
const  FOO = 'BAR'; 
for ($i = 0; $i < 32; ++$i) { 
    define('BIT_' . $i, 1 << $i); 
}

5、const只能接受静态的标量,而define可以采用任何表达式。
const BIT_5 = 1 << 5;    // invalid 
but 
define('BIT_5', 1 << 5); // valid

6、const 总是大小写敏感,然而define()可以通过第三个参数来定义大小写不敏感的常量
define('FOO', 'BAR', true);  
echo FOO; // BAR 
echo foo; // BAR

总结:
使用const简单易读,它本身是一个语言结构,而define是一个方法,用const定义在编译时比define快很多。
PHP 相关文章推荐
社区(php&amp;&amp;mysql)六
Oct 09 PHP
在PHP中使用灵巧的体系结构
Oct 09 PHP
php实现从ftp服务器上下载文件树到本地电脑的程序
Feb 10 PHP
php 安全过滤函数代码
May 07 PHP
php调整gif动画图片尺寸示例代码分享
Dec 05 PHP
discuz加密解密函数使用方法和中文注释
Jan 21 PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
Nov 18 PHP
thinkphp中session和cookie无效的解决方法
Dec 19 PHP
php+mysql实现无限分类实例详解
Jan 15 PHP
WordPress中重置文章循环的rewind_posts()函数讲解
Jan 11 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
May 05 PHP
PHP与SQL语句写一句话木马总结
Oct 11 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
Jun 18 #PHP
解析php中memcache的应用
Jun 18 #PHP
PHP实现的封装验证码类详解
Jun 18 #PHP
php empty()与isset()区别的详细介绍
Jun 17 #PHP
php include和require的区别深入解析
Jun 17 #PHP
浅析php header 跳转
Jun 17 #PHP
解析php中heredoc的使用方法
Jun 17 #PHP
You might like
php中文本数据翻页(留言本翻页)
2006/10/09 PHP
二招解决php乱码问题
2012/03/25 PHP
window.open()弹出居中的窗口
2007/02/01 Javascript
前端开发必须知道的JS之原型和继承
2010/07/06 Javascript
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
Jquery中getJSON在asp.net中的使用说明
2011/03/10 Javascript
5个JavaScript经典面试题
2014/10/13 Javascript
浅析node.js中close事件
2014/11/26 Javascript
node.js中的fs.writeFileSync方法使用说明
2014/12/14 Javascript
jquery实现点击页面计算点击次数
2015/01/23 Javascript
jquery预加载图片的方法
2015/05/27 Javascript
简单实现异步编程promise模式
2015/07/31 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
Javascript 实现计算器时间功能详解及实例(二)
2017/01/08 Javascript
原生js实现对Ajax的封装(仿jquery)
2017/01/22 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
node文件批量重命名的方法示例
2017/10/23 Javascript
Vue项目打包压缩的实现(让页面更快响应)
2020/03/10 Javascript
Vue实现菜单切换功能
2020/11/08 Javascript
[04:46]2018年度玩家喜爱的电竞媒体-完美盛典
2018/12/16 DOTA
解决python3中自定义wsgi函数,make_server函数报错的问题
2017/11/21 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
python根据文本生成词云图代码实例
2019/11/15 Python
python找出列表中大于某个阈值的数据段示例
2019/11/24 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
CSS3动画特效在活动页中的应用
2020/01/21 HTML / CSS
德国内衣、泳装和睡衣网上商店:Bigsize Dessous
2018/07/09 全球购物
在C语言中实现抽象数据类型什么方法最好
2014/06/26 面试题
学校安全工作制度
2014/01/19 职场文书
给水工程专业毕业生自荐信
2014/01/28 职场文书
公司投资建议书
2014/05/16 职场文书
职务任命书范本
2014/06/05 职场文书
学校党的群众路线教育实践活动对照检查材料
2014/09/24 职场文书
贫困证明书范文
2015/06/16 职场文书
如何做好工作总结!
2019/04/10 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript