Prior to 5.3, this was impossible to do:
function foo($a,$b) { var_dump(func_get_args()); }
To get the arguments of the function (i.e. for debugging purposes), you had to assign the return value of func_get_args variable before the actual value:
function foo($a,$b) { $args = func_get_args(); var_dump($args); }
Using the immediate return value of func_get_args (without a temporary variable) is possible with PHP 5.3.
source share