(PHP 5 >= 5.3.0)
forward_static_call — Llamar a un método estático
Llama a una función o método definido por el usuario, dado por el parámetro function, con los siguientes argumentos. Esta función debe ser llamda dentro del contexto de un método, no se puede usar fuera de una clase.
La función o método a ser llamado. Este parámetro puede ser una matriz, con el nombre de la clase y del método, o una cadena, con el nombre una función.
Cero o más parámetros a ser pasados a la función.
Devuelve el resultado de la función, o FALSE en caso de error.
Example #1 Ejemplo de forward_static_call()
<?php
class A
{
const NOMBRE = 'A';
public static function prueba() {
$args = func_get_args();
echo static::NOMBRE, " ".join(',', $args)." \n";
}
}
class B extends A
{
const NOMBRE = 'B';
public static function prueba() {
echo self::NOMBRE, "\n";
forward_static_call(array('A', 'prueba'), 'más', 'args');
forward_static_call( 'prueba', 'otro', 'args');
}
}
B::prueba('foo');
function prueba() {
$args = func_get_args();
echo "C ".join(',', $args)." \n";
}
?>
El resultado del ejemplo sería:
B B más,args C otro,args