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 和 MySQL 基础教程(二)
Oct 09 PHP
php的控制语句
Oct 09 PHP
比较全的PHP 会话(session 时间设定)使用入门代码
Jun 05 PHP
PHP 字符串 小常识
Jun 05 PHP
黑夜路人出的几道php笔试题
Aug 04 PHP
PHP无法访问远程mysql的问题分析及解决
May 16 PHP
基于PHP array数组的教程详解
Jun 05 PHP
探讨php中header的用法详解
Jun 07 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
基于PHP代码实现中奖概率算法可用于刮刮卡、大转盘等抽奖算法
Dec 20 PHP
PHP使用http_build_query()构造URL字符串的方法
Apr 02 PHP
laravel 字段格式化 modle 字段类型转换方法
Sep 30 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连接MySQL代码的参数说明
2008/06/07 PHP
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
2013/04/26 PHP
PHP实现UTF-8文件BOM自动检测与移除实例
2014/11/05 PHP
php使用ftp实现文件上传与下载功能
2017/07/21 PHP
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
js全屏显示显示代码的三种方法
2013/11/11 Javascript
JQuery页面的表格数据的增加与分页的实现
2013/12/10 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
2014/02/07 Javascript
jQuery实现平滑滚动到指定锚点的方法
2015/03/20 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
JavaScript过滤字符串中的中文与空格方法汇总
2016/03/07 Javascript
Bootstrap多级导航栏(级联导航)的实现代码
2016/03/08 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
Javascript单例模式的介绍和实例
2016/10/08 Javascript
vue插件vue-resource的使用笔记(小结)
2017/08/04 Javascript
React Router v4 入坑指南(小结)
2018/04/08 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
Python抓取淘宝下拉框关键词的方法
2015/07/08 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例
2018/05/04 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
Python Django框架实现应用添加logging日志操作示例
2019/05/17 Python
Python3+Pycharm+PyQt5环境搭建步骤图文详解
2019/05/29 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
2019/07/11 Python
Django对数据库进行添加与更新的例子
2019/07/12 Python
Python Django Cookie 简单用法解析
2019/08/13 Python
python pprint模块中print()和pprint()两者的区别
2020/02/10 Python
django 取消csrf限制的实例
2020/03/13 Python
解决keras模型保存h5文件提示无此目录问题
2020/07/01 Python
用css3写出气球样式的示例代码
2017/09/11 HTML / CSS
来自Ocado的宠物商店:Fetch
2018/07/10 全球购物
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
个人总结格式范文
2015/03/09 职场文书
罚款通知怎么写
2015/04/22 职场文书
公司仓库管理制度
2015/08/04 职场文书
Go中使用gjson来操作JSON数据的实现
2022/08/14 Golang