php 函数中使用static的说明


Posted in PHP onJune 01, 2012
function sendHeader($num, $rtarr = null) { 
static $sapi = null; 
if ($sapi === null) { 
$sapi = php_sapi_name(); 
} 
return $sapi++;

看PW源码的时候发现setHeader()函数中使用static关键字,很奇怪,以前也没这样用过。

static用在函数里面,声明一次变量后,如果再次调用这个函数将会在初始值延续,如$sapi这里将累加。

echo sendHeader(1)."<br>"; 
echo sendHeader(2)."<br>"; 
echo sendHeader(3)."<br>";

output:

apache2handler 
apache2handles 
apache2handlet

和global有点类似,但不同的是作用域。static只能作用于此函数。

有点意思。需要深入研究。

PHP 相关文章推荐
php str_pad() 将字符串填充成指定长度的字符串
Feb 23 PHP
php park、unpark、ord 函数使用方法(二进制流接口应用实例)
Oct 19 PHP
浅谈discuz密码加密的方式
May 22 PHP
php替换字符串中间字符为省略号的方法
May 04 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
May 13 PHP
php源码分析之DZX1.5随机数函数random用法
Jun 17 PHP
PHP根据图片色界在不同位置加水印的方法
Jul 01 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
java微信开发之上传下载多媒体文件
Jun 24 PHP
实现PHP搜索加分页
Oct 12 PHP
PHP实现字符串翻转功能的方法【递归与循环算法】
Nov 03 PHP
PHP中实现中文字串截取无乱码的解决方法
May 29 PHP
PHP number_format() 函数定义和用法
Jun 01 #PHP
分享一个PHP数据流应用的简单例子
Jun 01 #PHP
检查php文件中是否含有bom的函数
May 31 #PHP
php注销代码(session注销)
May 31 #PHP
PHP中使用mktime获取时间戳的一个黑色幽默分析
May 31 #PHP
php分页思路以及在ZF中的使用
May 30 #PHP
php DOS攻击实现代码(附如何防范)
May 29 #PHP
You might like
使用PHP获取当前url路径的函数以及服务器变量
2013/06/29 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
PHP中list方法用法示例
2016/12/01 PHP
灵活应用js调试技巧解决样式问题的步骤分享
2012/03/15 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
用unescape反编码得出汉字示例
2014/04/24 Javascript
jquery进行数组遍历如何跳出当前的each循环
2014/06/05 Javascript
javascript动态添加删除tabs标签的方法
2015/07/06 Javascript
代码分析jQuery四种静态方法使用
2015/07/23 Javascript
深入理解关于javascript中apply()和call()方法的区别
2016/04/12 Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
2016/06/13 Javascript
全面了解addEventListener和on的区别
2016/07/14 Javascript
Angular2 路由问题修复详解
2017/03/01 Javascript
浅谈Node.js 子进程与应用场景
2018/01/24 Javascript
Node.js应用设置安全的沙箱环境
2018/04/23 Javascript
layer弹出层全屏及关闭方法
2018/08/17 Javascript
react同构实践之实现自己的同构模板
2019/03/13 Javascript
详解关于html,css,js三者的加载顺序问题
2019/04/10 Javascript
在React中写一个Animation组件为组件进入和离开加上动画/过度效果
2019/06/24 Javascript
Vue v-model组件封装(类似弹窗组件)
2020/01/08 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
前端vue+elementUI如何实现记住密码功能
2020/09/20 Javascript
[32:26]EG vs IG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
pytorch中tensor的合并与截取方法
2018/07/26 Python
对python csv模块配置分隔符和引用符详解
2018/12/12 Python
Python with关键字,上下文管理器,@contextmanager文件操作示例
2019/10/17 Python
纯CSS3代码实现switch滑动开关按钮效果
2016/08/30 HTML / CSS
css3的@media属性实现页面响应式布局示例代码
2014/02/10 HTML / CSS
css3 伪元素和伪类选择器详解
2014/09/04 HTML / CSS
怀旧收藏品和经典纪念品:Betty’s Attic
2018/08/29 全球购物
英国领先的露营和露营车品牌之一:OLPRO
2019/08/06 全球购物
Java如何读取CLOB字段
2013/10/10 面试题
幼儿园元旦活动感言
2014/03/02 职场文书
2014年加油站工作总结
2014/12/04 职场文书
北大自主招生自荐信
2015/03/04 职场文书