File: forward_static_call_array.phpt

package info (click to toggle)
php8.4 8.4.11-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 208,108 kB
  • sloc: ansic: 1,060,628; php: 35,345; sh: 11,866; cpp: 7,201; pascal: 4,913; javascript: 3,091; asm: 2,810; yacc: 2,411; makefile: 689; xml: 446; python: 301; awk: 148
file content (41 lines) | stat: -rw-r--r-- 764 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
--TEST--
mixed forward_static_call_array ( callable $function , array $parameters );
--CREDITS--
marcosptf - <marcosptf@yahoo.com.br> - @phpsp - sao paulo - br
--FILE--
<?php

function test() {
    $args = func_get_args();
    echo "C " . join(',', $args) . " \n";
}

class A {

    const NAME = 'A';

    public static function test() {
        $args = func_get_args();
        echo static::NAME, " " . join(',', $args) . " \n";
    }

}

class B extends A {

    const NAME = 'B';

    public static function test() {
        echo self::NAME, "\n";
        forward_static_call_array(array('A', 'test'), array('more', 'args'));
        forward_static_call_array('test', array('other', 'args'));
    }

}

B::test('foo');
?>
--EXPECT--
B
B more,args 
C other,args