I found this weird switch statement in Laravel 5 core :
switch (count($args)) { case 0: return $instance->$method(); case 1: return $instance->$method($args[0]); case 2: return $instance->$method($args[0], $args[1]); case 3: return $instance->$method($args[0], $args[1], $args[2]); case 4: return $instance->$method($args[0], $args[1], $args[2], $args[3]); default: return call_user_func_array([$instance, $method], $args);
Is there a reason they decided to build such a thing instead of just using it?
return call_user_func_array([$instance, $method], $args);
Any benefits?
source share