2008-05-07 22:10:03 +08:00
|
|
|
--TEST--
|
2018-08-10 10:19:55 +08:00
|
|
|
Magic methods in overridden stdClass inside namespace
|
2008-05-07 22:10:03 +08:00
|
|
|
--FILE--
|
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace test;
|
|
|
|
|
|
|
|
class foo {
|
|
|
|
public $e = array();
|
2018-09-17 01:16:42 +08:00
|
|
|
|
2008-05-07 22:10:03 +08:00
|
|
|
public function __construct() {
|
|
|
|
$this->e[] = $this;
|
|
|
|
}
|
2018-09-17 01:16:42 +08:00
|
|
|
|
2008-05-07 22:10:03 +08:00
|
|
|
public function __set($a, $b) {
|
|
|
|
var_dump($a, $b);
|
|
|
|
}
|
|
|
|
public function __get($a) {
|
|
|
|
var_dump($a);
|
|
|
|
return $this;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2008-11-04 23:58:55 +08:00
|
|
|
use test\foo as stdClass;
|
2008-05-07 22:10:03 +08:00
|
|
|
|
|
|
|
$x = new stdClass;
|
|
|
|
$x->a = 1;
|
|
|
|
$x->b->c = 1;
|
|
|
|
$x->d->e[0]->f = 2;
|
|
|
|
|
|
|
|
?>
|
|
|
|
--EXPECT--
|
|
|
|
string(1) "a"
|
|
|
|
int(1)
|
|
|
|
string(1) "b"
|
|
|
|
string(1) "c"
|
|
|
|
int(1)
|
|
|
|
string(1) "d"
|
|
|
|
string(1) "f"
|
|
|
|
int(2)
|