4 public function __call($fn, $args) {
14 call_user_func(array($obj, "__call"), "a", "b", "c", "d");
15 call_user_func(array($obj, "foo"), "a", "b", "c", "d");
17 // call_user_func_array
18 call_user_func_array(array($obj, "__call"), array("a", "b", "c", "d"));
19 call_user_func_array(array($obj, "foo"), array("a", "b", "c", "d"));
24 public function __call($fn, $args) {
26 var_dump(isset($this));
30 public function test() {
31 call_user_func(array('C2', '__call'), "a", "b", "c", "d");
32 call_user_func(array('C2', 'foo'), "a", "b", "c", "d");
33 call_user_func(array('self', '__call'), "a", "b", "c", "d");
34 call_user_func(array('self', 'foo'), "a", "b", "c", "d");
45 public function __call($fn, $args) {
47 var_dump(isset($this));
51 public static function test() {
53 call_user_func(array('C3', 'foo'), "a", "b", "c", "d");
55 call_user_func(array('self', 'foo'), "a", "b", "c", "d");
66 public function __call($fn, $args) {
76 call_user_func(array($obj, 'foo'), "a", "b", "c", "d");
81 public function foo($w, $x, $y, $z) {
86 public function __call($fn, $args) {
96 call_user_func(array($obj, 'foo'), "a", "b", "c", "d");
102 class B6
extends A6
{
103 public function test() {
104 call_user_func('A6::foo', 1, 2, 3);
105 call_user_func(array('A6','foo'), 1, 2, 3);
108 class C6
extends B6
{
109 public function __call($fn, $args) {
110 var_dump($fn, $args);
124 public function __call($fn, $args) {
125 var_dump($fn, $args);
128 class B7
extends A7
{
129 public function test() {
130 call_user_func('A7::foo', 1, 2, 3);
131 call_user_func(array('A7', 'foo'), 1, 2, 3);
134 class C7
extends B7
{
147 public function __call($fn, $args) {
148 var_dump($fn, $args);
152 public function test() {
153 call_user_func('A8::foo', 1, 2, 3);
154 call_user_func(array('A8', 'foo'), 1, 2, 3);
157 class C8
extends B8
{
168 class D9
extends C9
{
169 public function __call($fn, $args) {
173 class E9
extends D9
{
174 public function __call($fn, $args) {
177 public function test() {
178 call_user_func(array($this, 'foo'));
179 call_user_func(array('D9', 'foo'));
180 call_user_func(array('E9', 'foo'));
183 class F9
extends D9
{
184 public function __call($fn, $args) {
193 call_user_func(array($obj, 'foo'));
194 call_user_func(array('D9', 'foo'));