首页 >后端开发 >php教程 >在php自定义函数中使用static

在php自定义函数中使用static

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原创
2016-07-25 09:05:181016浏览
  1. function sendHeader($num, $rtarr = null) {
  2. static $sapi = null;
  3. if ($sapi === null) {
  4. $sapi = php_sapi_name();
  5. }
  6. return $sapi++;
  7. ?>
复制代码

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

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

  1. echo sendHeader(1)."
    ";
  2. echo sendHeader(2)."
    ";
  3. echo sendHeader(3)."
    ";
  4. ?>
复制代码

输出结果: apache2handler apache2handles apache2handlet

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



声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn