解析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 相关文章推荐
如何将一个表单同时提交到两个地方处理
Oct 09 PHP
PHP 和 MySQL 开发的 8 个技巧
Jan 02 PHP
PHP性能优化 产生高度优化代码
Jul 22 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
Sep 23 PHP
php实现将Session写入数据库
Jul 26 PHP
php cookie 详解使用实例
Nov 03 PHP
Linux平台PHP5.4设置FPM线程数量的方法
Nov 09 PHP
PDO操作MySQL的基础教程(推荐)
Aug 18 PHP
PHP 多任务秒级定时器的实现方法
May 13 PHP
PHP封装类似thinkphp连贯操作数据库Db类与简单应用示例
May 08 PHP
PHP token验证生成原理实例分析
Jun 05 PHP
laravel框架中控制器的创建和使用方法分析
Nov 23 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 魔术方法使用说明
2009/10/20 PHP
php array的学习笔记
2012/05/16 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
thinkPHP实现签到功能的方法
2017/03/15 PHP
document.documentElement &amp;&amp; document.documentElement.scrollTop
2007/12/01 Javascript
JS根据年月获得当月天数的实现代码
2014/07/03 Javascript
Bootstrap企业网站实战项目4
2016/10/14 Javascript
js数组与字符串常用方法总结
2017/01/13 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
Vue.js2.0中的变化小结
2017/10/24 Javascript
vue init失败简单解决方法(终极版)
2017/12/22 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
利用Blob进行文件上传的完整步骤
2018/08/02 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
详解vue-cli项目开发/生产环境代理实现跨域请求
2019/07/23 Javascript
jquery实现手风琴案例
2020/05/04 jQuery
详谈python在windows中的文件路径问题
2018/04/28 Python
使用python爬虫获取黄金价格的核心代码
2018/06/13 Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
2019/04/23 Python
Python中字典与恒等运算符的用法分析
2019/08/22 Python
Django之路由层的实现
2019/09/09 Python
python列表推导式入门学习解析
2019/12/02 Python
Django通用类视图实现忘记密码重置密码功能示例
2019/12/17 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
2020/03/12 Python
django model object序列化实例
2020/03/13 Python
解决Opencv+Python cv2.imshow闪退问题
2020/04/24 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
python 实现波浪滤镜特效
2020/12/02 Python
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
美国电视购物:QVC
2017/02/06 全球购物
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
网络营销策划方案
2014/06/04 职场文书
物业公司的岗位任命书
2014/06/06 职场文书
大学文艺委员竞选稿
2015/11/19 职场文书
Vue全家桶入门基础教程
2021/05/14 Vue.js
Windows Server 2016服务器用户管理及远程授权图文教程
2022/08/14 Servers