function foobar($arg, $arg2) {
echo __FUNCTION__, " got $arg and $arg2\n";
}
foobar('one','two'); // OUTPUTS : foobar got one and two
call_user_func_array("foobar", array("one", "two")); // // OUTPUTS : foobar got one and two
As I can see both regular one and call_user_func_array
method both outputs same, then why should one prefer it?
In which scenario regular calling method will fail but call_user_func_array
will not?
Can I get any such example?
Thank you
You have an array with the arguments for your function which is of indeterminate length.
$args = someFuncWhichReturnsTheArgs();
foobar( /* put these $args here, you do not know how many there are */ );
The alternative would be:
switch (count($args)) {
case 1:
foobar($args[0]);
break;
case 2:
foobar($args[0], $args[1]);
break;
...
}
Which is not a solution.
The use case for this may be rare, but when you come across it you need it.