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 相关文章推荐
php5新改动之短标记启用方法
Sep 11 PHP
php+jquery编码方面的一些心得(utf-8 gb2312)
Oct 12 PHP
PHP中图片等比缩放的实例
Mar 24 PHP
基于PHP一些十分严重的缺陷详解
Jun 03 PHP
基于php-fpm的配置详解
Jun 03 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 PHP
实例简介PHP的一些高级面向对象编程的特性
Nov 27 PHP
php简单实现sql防注入的方法
Apr 22 PHP
PHP 文件上传后端处理实用技巧方法
Jan 06 PHP
PHP数据库操作三:redis用法分析
Aug 16 PHP
Laravel多用户认证系统示例详解
Mar 13 PHP
360搜索引擎自动收录php改写方案
Apr 28 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
DIY一个适配电脑声卡的动圈话筒放大器
2021/03/02 无线电
咖啡与牛奶
2021/03/03 冲泡冲煮
用PHP实现图象锐化代码
2007/06/14 PHP
PHP 模拟登陆MSN并获得用户信息
2009/05/16 PHP
PHP的可变变量名的使用方法分享
2012/02/05 PHP
PHP数组循环操作详细介绍 附实例代码
2013/02/03 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
2017/08/04 PHP
Laravel 实现关系模型取出需要的字段
2019/10/10 PHP
javascript 学习之旅 (1)
2009/02/05 Javascript
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
2009/11/30 Javascript
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
微信小程序 实现拖拽事件监听实例详解
2016/11/16 Javascript
微信小程序 弹窗自定义实例代码
2017/03/08 Javascript
AngularJS 最常用的八种功能(基础知识)
2017/06/26 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
jquery 动态遍历select 赋值的实例
2018/09/12 jQuery
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
2019/07/10 jQuery
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
js实现缓动动画
2020/11/25 Javascript
[05:31]DOTA2上海特级锦标赛主赛事第三日RECAP
2016/03/05 DOTA
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
Python 数据结构之旋转链表
2017/02/25 Python
利用Python如何批量修改数据库执行Sql文件
2018/07/29 Python
Pycharm 实现下一个文件引用另外一个文件的方法
2019/01/17 Python
基于Python的PIL库学习详解
2019/05/10 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
python在linux环境下安装skimage的示例代码
2020/10/14 Python
CSS3实现超慢速移动动画效果非常流畅无卡顿
2014/06/15 HTML / CSS
HTML5 Canvas的事件处理介绍
2015/04/24 HTML / CSS
荷兰多品牌网上鞋店:Stoute Schoenen
2017/08/24 全球购物
大学生专科毕业生自我评价
2013/11/17 职场文书
家长会学生演讲稿
2014/04/26 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
2019年汽车租赁合同范本!
2019/08/12 职场文书