PHP static局部静态变量和全局静态变量总结


Posted in PHP onMarch 02, 2014

静态局部变量的特点:

1.不会随着函数的调用和退出而发生变化,不过,尽管该变量还继续存在,但不能使用它。倘若再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值
2.静态局部变量只会初始化一次
3.静态属性只能被初始化为一个字符值或一个常量,不能使用表达式。即使局部静态变量定义时没有赋初值,系统会自动赋初值0(对数值型变量)或空字符(对字符变量);静态变量的初始值为0。
4.当多次调用一个函数且要求在调用之间保留某些变量的值时,可考虑采用静态局部变量。虽然用全局变量也可以达到上述目的,但全局变量有时会造成意外的副作用,因此仍以采用局部静态变量为宜。

function test()
{
    static $var = 5;  //static $var = 1+1;就会报错
    $var++;
    echo $var . ' ';
} 
test(); //2
test(); //3
test(); //4
echo $var; //报错:Notice: Undefined variable: var

关于静态全局变量:

//全局变量本身就是静态存储方式,所有的全局变量都是静态变量
function static_global(){
    global $glo;
    $glo++;
    echo $glo.'<br>';
}static_global(); //1
static_global(); //2
static_global(); //3
echo $glo . '<br>'; //3

所以静态全局变量使用并不多。

PHP 相关文章推荐
建立动态的WML站点(一)
Oct 09 PHP
特详细的PHPMYADMIN简明安装教程
Aug 01 PHP
php用户注册页面利用js进行表单验证具体实例
Oct 17 PHP
php时区转换转换函数
Jan 07 PHP
PHP+shell实现多线程的方法
Jul 01 PHP
PHP常用的排序和查找算法
Aug 06 PHP
微信支付扫码支付php版
Jul 22 PHP
PHP页面跳转实现延时跳转的方法
Dec 10 PHP
给大家分享几个常用的PHP函数
Jan 15 PHP
php使用curl获取header检测开启GZip压缩的方法
Aug 15 PHP
PDO::errorCode讲解
Jan 28 PHP
YII2框架中添加自定义模块的方法实例分析
Mar 18 PHP
PHP代码优化之成员变量获取速度对比
Feb 28 #PHP
php递归方法实现无限分类实例代码
Feb 28 #PHP
PHP中常用的转义函数
Feb 28 #PHP
PHP中鲜为人知的10个函数
Feb 28 #PHP
php中调用其他系统http接口的方法说明
Feb 28 #PHP
PHP URL参数获取方式的四种例子
Feb 28 #PHP
php使用多个进程同时控制文件读写示例
Feb 28 #PHP
You might like
PHP实现格式化文件数据大小显示的方法
2015/01/03 PHP
PHP curl伪造IP地址和header信息代码实例
2015/04/27 PHP
PHP数组函数知识汇总
2016/05/12 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
javascript中直接引用Microsoft的COM生成Word
2014/01/20 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
2016/08/10 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
详谈angularjs中路由页面强制更新的问题
2017/04/24 Javascript
Node.js实现文件上传的示例
2017/06/28 Javascript
vue.js数据绑定的方法(单向、双向和一次性绑定)
2017/07/13 Javascript
jQuery实现验证表单密码一致性及正则表达式验证邮箱、手机号的方法
2017/12/05 jQuery
ReactNative中使用Redux架构总结
2017/12/15 Javascript
JS实现全屏预览F11功能的示例代码
2018/07/23 Javascript
JS实现的RC4加密算法示例
2018/08/16 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
Angular8基础应用之表单及其验证
2019/08/11 Javascript
解决axios post 后端无法接收数据的问题
2019/10/29 Javascript
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
2020/09/17 Javascript
Openlayers+EasyUI Tree动态实现图层控制
2020/09/28 Javascript
[58:12]Ti4第二日主赛事败者组 LGD vs iG 3
2014/07/21 DOTA
举例区分Python中的浅复制与深复制
2015/07/02 Python
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
python中函数默认值使用注意点详解
2016/06/01 Python
python3中set(集合)的语法总结分享
2017/03/24 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
如何用python处理excel表格
2020/06/09 Python
python实现画图工具
2020/08/27 Python
ColourPop美国官网:卡拉泡泡,洛杉矶彩妆品牌
2019/04/28 全球购物
大学生个人自我鉴定
2013/12/03 职场文书
工地资料员岗位职责
2013/12/31 职场文书
公司培训欢迎词
2014/01/10 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
div与span之间的区别与使用介绍
2021/12/06 HTML / CSS