File:
[ELWIX - Embedded LightWeight unIX -] /
embedaddon /
php /
tests /
classes /
__call_004.phpt
Revision
1.1.1.1 (vendor branch):
download - view:
text,
annotated -
select for diffs -
revision graph
Tue Feb 21 23:48:06 2012 UTC (12 years, 4 months ago) by
misho
Branches:
php,
MAIN
CVS tags:
v5_4_3elwix,
v5_4_29p0,
v5_4_29,
v5_4_20p0,
v5_4_20,
v5_4_17p0,
v5_4_17,
v5_3_10,
HEAD
php
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>