Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
266 views
in Technique[技术] by (71.8m points)

为什么这会报错

<?php
class aa{
   static public  $zz = 8;
   public function a1(){
        $a=1;
        $this->a2();
        return $a;

    }
    
    public function a2(){
        $this->zz +=1;
    }
}

$k = new aa();
$k->a1();
$k->a2();
 
echo $k->zz;
echo '<br>';
echo $k->a1();
die();

Strict Standards: Accessing static property aa::$zz as non static in D:WWWclient.php on line 13

Notice: Undefined property: aa::$zz in D:WWWclient.php on line 13

Strict Standards: Accessing static property aa::$zz as non static in D:WWWclient.php on line 27
2

Strict Standards: Accessing static property bb::$zz as non static in D:WWWclient.php on line 13

Notice: Undefined property: bb::$zz in D:WWWclient.php on line 13
1


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

静态成员变量只能由静态方法访问,静态方法只能访问静态成员

访问静态成员方式:

类内调用
self::$zz += 1;

类外调用
aa::$zz;

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...