php 函数中使用static的说明

yipeiwu_com6年前PHP代码库

复制代码 代码如下:

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懒人函数 自动添加数据

复制代码 代码如下: /* *@自动添加数据函数 *@$table 表名 *@$arr 字段库 array("title",array("content",int)) *@ array(...

PHP遍历目录并返回统计目录大小

复制代码 代码如下: <?php $dirname = "test1"; //mkdir($dirname); //遍历一层目录 function listdir($dirname...

如何隐藏你的.php文件

今天做PHP在线手册镜像的时候看到了这个方法,哈哈,以前都没有注意到,所以说,手册是最好的老师 ---------------------------------------------...

PHP微信开发之微信录音临时转永久存储

最近做开发的时候碰到了这个问题,甲方希望用户在微信端的录音能够一直有效。就是随时打开好友的分享就能听到好友的录音。可在微信官方开发手册上查到微信录音文件上传后只能在微信端保留3天时间,3...

php中array_column函数简单实现方法

本文实例讲述了php中array_column函数简单实现方法。分享给大家供大家参考,具体如下: php中的array_column()可返回输入数组中某个单一列的值。 示例: &l...