php - why does this give an error
漂亮男人
漂亮男人 2017-05-16 13:13:40
0
3
507
<?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

漂亮男人
漂亮男人

reply all(3)
phpcn_u1582

Static member variables can only be accessed by static methods, and static methods can only access static members

How to access static members:

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

类外调用
aa::$zz;
阿神

You declared that $zz is a static variable, and then you use $this to call it. Is there any problem?

过去多啦不再A梦

Static member variables are called in a static way

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template