PHP - forward_static_call ()
La funzione forward_static_call () può chiamare un metodo statico.
Sintassi
mixed forward_static_call( callable $function [, mixed $parameter [, mixed $... ]] )
La funzione forward_static_call () può chiamare una funzione o un metodo definito dall'utente fornito dal parametro della funzione. Deve essere chiamato all'interno di un contesto di metodo e non può essere utilizzato all'esterno di una classe. Può utilizzare l'associazione statica tardiva.
Esempio
<?php
class Beer {
const NAME = 'Beer!';
public static function printed(){
echo 'static Beer:NAME = '. static::NAME . "\n";
}
}
class Ale extends Beer {
const NAME = 'Ale!';
public static function printed(){
forward_static_call(array('parent','printed'));
call_user_func(array('parent','printed'));
forward_static_call(array('Beer','printed'));
call_user_func(array('Beer','printed'));
}
}
Ale::printed();
echo "\n";
?>
Produzione
static Beer:NAME = Ale!
static Beer:NAME = Ale!
static Beer:NAME = Ale!
static Beer:NAME = Beer!