Annotation of embedaddon/php/tests/classes/__call_004.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: When __call() is invoked via ::, ensure current scope's __call() is favoured over the specified class's __call().
3: --FILE--
4: <?php
5: class A {
6: function __call($strMethod, $arrArgs) {
7: echo "In " . __METHOD__ . "($strMethod, array(" . implode(',',$arrArgs) . "))\n";
8: var_dump($this);
9: }
10: }
11:
12: class B extends A {
13: function __call($strMethod, $arrArgs) {
14: echo "In " . __METHOD__ . "($strMethod, array(" . implode(',',$arrArgs) . "))\n";
15: var_dump($this);
16: }
17:
18: function test() {
19: A::test1(1,'a');
20: B::test2(1,'a');
21: self::test3(1,'a');
22: parent::test4(1,'a');
23: }
24: }
25:
26: $b = new B();
27: $b->test();
28: ?>
29: --EXPECTF--
30: In B::__call(test1, array(1,a))
31: object(B)#1 (0) {
32: }
33: In B::__call(test2, array(1,a))
34: object(B)#1 (0) {
35: }
36: In B::__call(test3, array(1,a))
37: object(B)#1 (0) {
38: }
39: In B::__call(test4, array(1,a))
40: object(B)#1 (0) {
41: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>