>  기사  >  php教程  >  php函数中使用static

php函数中使用static

WBOY
WBOY원래의
2016-06-13 10:49:541089검색

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)."
";
echo sendHeader(2)."
";
echo sendHeader(3)."
";
  output:

apache2handler
apache2handles
apache2handlet
  和global有点类似,但不同的是作用域。static只能作用于此函数。
有点意思。需要深入研究。

 

 

摘自 zaric

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.