php 静态变量与自定义常量的使用方法


Posted in PHP onJanuary 26, 2010

⚑ 静态变量的声明与使用
⚑ 自定义常量的使用方式

什么是静态变量?
静态变量是指用static声明的变量,这种变量与局部变量的区别是,当静态变量离开了它的作用范围后,它的值不会自动消亡,而是继续存在,当下次再用到它的时候,可以保留最近一次的值。
下面举例:

<?php 
function add() 
{ 
static $i=0; 
$i++; 
echo $i; 
} 
add(); 
echo " "; 
add(); 
?>

这段程序中,主要定义了一个函数add(),然后分两次调用add()。
如果用局部变量的方式来分工这段代码,两次的输出应该都是1。但实际输出却是1和2。
这是因为,变量i在声明的时候被加上了一个修饰符static,这就标志着i变量在add()函数内部就是一个静态变量了,具备记忆自身值的功能,当第一次调用add时,i由于自加变成了1,这个时候,i就记住自己不再是0,而是1了,当我们再次调用add时,i再一次自加,由1变成了2。由此,我们就可以看出静态变量的特性了。
什么是自定义常量?
所谓自定义常量,就是指用一个字符标识来代表另外一个对象,这个对象可以是一个数值,一个字符串,一个布尔值等等。它的定义与变量有着许多相似之处。只有一点不一样,那就是变量的值在程序运行过程中可以任意更改,而自定义常量一旦定义下来后,在程序运行中就再也不能修改了。
定义方式如下:
define("YEAR","2012");
使用define关键字来将2012这个字符串绑定到YEAR上来,以后在程序当中出现YEAR的地方就用2012来代替。一般情况下,我们定义常量时,常量名都使用大写字母。
例:
<?php 
define("YEAR","2012"); 
define("MONTH","12"); 
define("DATE","21"); 
define("THING","Doomsday"); 
echo YEAR."-".MONTH."-".DATE." ".THING; 
?>

这段程序中,定义了四个常量,分别是YEAR,MONTH,DATE,THING,它们对应的值分别是2012,12,21,Doomsday,当我们用echo将它们连起来显示时,与变量不同的地方就在于没有使用“$”。
它的运行结果是:2012-12-21 Doomsday。
PHP 相关文章推荐
小谈php正则提取图片地址
Mar 27 PHP
php中替换字符串中的空格为逗号','的方法
Jun 09 PHP
php使用gettimeofday函数返回当前时间并存放在关联数组里
Mar 19 PHP
学习php设计模式 php实现备忘录模式(Memento)
Dec 09 PHP
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
Jan 27 PHP
PHP Oauth授权和本地加密实现方法
Aug 12 PHP
浅谈php和js中json的编码和解码
Oct 24 PHP
yii2简单使用less代替css示例
Mar 10 PHP
PHP基于ORM方式操作MySQL数据库实例
Jun 21 PHP
PHP中__set()实例用法和基础讲解
Jul 23 PHP
php适配器模式简单应用示例
Oct 23 PHP
如何利用PHP实现上传图片功能详解
Sep 24 PHP
php学习之 认清变量的作用范围
Jan 26 #PHP
PHP 变量的定义方法
Jan 26 #PHP
php cout&amp;lt;&amp;lt;的一点看法
Jan 24 #PHP
php addslashes和mysql_real_escape_string
Jan 24 #PHP
PHPMailer 中文使用说明小结
Jan 22 #PHP
关于php fread()使用技巧
Jan 22 #PHP
PHP 时间转换Unix时间戳代码
Jan 22 #PHP
You might like
《魔兽争霸3:重制版》更新 多项视觉效果调整
2020/05/04 魔兽争霸
PHP 中执行排序与 MySQL 中排序
2009/04/21 PHP
phpMyAdmin 安装配置方法和问题解决
2009/06/08 PHP
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
php 二维数组时间排序实现代码
2016/11/19 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
javascript下string.format函数补充
2010/08/24 Javascript
JavaScript 创建运动框架的实现代码
2013/05/08 Javascript
关于删除时的提示处理(确定删除吗)
2013/11/03 Javascript
javascript对象的使用和属性操作示例详解
2014/03/02 Javascript
JS动态添加iframe的代码
2015/09/14 Javascript
vue实现简单实时汇率计算功能
2017/01/15 Javascript
jQuery EasyUI Draggable拖动组件
2017/03/01 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
bootstrap基本配置_动力节点Java学院整理
2017/07/14 Javascript
vue父组件点击触发子组件事件的实例讲解
2018/02/08 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
[03:12]2016完美“圣”典风云人物:单车专访
2016/12/02 DOTA
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
linux查找当前python解释器的位置方法
2019/02/20 Python
Python小进度条显示代码
2019/03/05 Python
Python统计文本词汇出现次数的实例代码
2020/02/27 Python
使用HTML5的链接预取功能(link prefetching)给网站提速
2012/12/13 HTML / CSS
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
计算机工程学院个人求职信
2013/10/05 职场文书
护理自我鉴定范文
2013/10/06 职场文书
酒店保洁主管岗位职责
2013/11/28 职场文书
技校生自我鉴定
2013/12/08 职场文书
运动会广播稿150字
2014/02/19 职场文书
《日月潭》教学反思
2014/02/28 职场文书
机械设计专业大学生职业生涯规划书范文
2014/09/13 职场文书
2014幼儿园保育员工作总结
2014/11/10 职场文书
2014年人力资源工作总结
2014/11/19 职场文书
python 中的@运算符使用
2021/05/26 Python