--TEST-- Assigning to a non-existent static property --FILE-- <?php class C { } C::$p = 1; ?> --EXPECTF-- Fatal error: Access to undeclared static property: C::$p in %s on line 3, position %d
<?php trait T1 { static function hello() { echo "Hello "; } } trait T2 { use T1; static function world() { echo "World!\n"; } } class C { use T2; static function p() { self::hello(); self::world(); } } C::p();
unset(${'i'}); echo "\n" . '$i[0]=f(): '; echo $a[$i[0] = f()][++$i[0]]; unset($i); echo "\n" . '$i[0][0]=f(): '; echo $a[$i[0][0] = f()][++$i[0][0]]; unset($i); echo "\n" . '$i->p=f(): '; echo $a[$i->p = f()][++$i->p]; unset($i); echo "\n" . '$i->p->q=f(): '; echo $a[$i->p->q = f()][++$i->p->q]; unset($i); echo "\n" . '$i->p[0]=f(): '; echo $a[$i->p[0] = f()][++$i->p[0]]; unset($i); echo "\n" . '$i->p[0]->p=f(): '; echo $a[$i->p[0]->p = f()][++$i->p[0]->p]; unset($i); class C { static $p; } echo "\n" . 'C::$p=f(): '; echo $a[C::$p = f()][++C::$p]; echo "\n" . 'C::$p[0]=f(): '; C::$p = array(); echo $a[C::$p[0] = f()][++C::$p[0]]; echo "\n" . 'C::$p->q=f(): '; C::$p = new stdclass(); echo $a[C::$p->q = f()][++C::$p->q];