vote up 4 vote down star
1

I seem to remember that in PHP there is a way to pass an array as a list of arguments for a function, dereferencing the array into the standard func($arg1, $arg2) manner. But now I'm lost on how to do it. I recall the manner of passing by reference, how to "glob" incoming parameters ... but not how to de-list the array into a list of arguments.

It may be as simple as func(&$myArgs), but I'm pretty sure that isn't it. But, sadly, the php.net manual hasn't divulged anything so far. Not that I've had to use this particular feature for the last year or so.

flag

67% accept rate

2 Answers

vote up 14 vote down check

http://www.php.net/manual/en/function.call-user-func-array.php

call_user_func_array('func',$myArgs);
link|flag
I could've sworn that it was also a non-function, like a prefix character or something. Thanks. – The Wicked Flea Apr 13 '09 at 15:26
It is, but not in PHP. In Python ;-) – vartec Apr 13 '09 at 15:46
But I don't know Python! I must be accidentally psychic... :D – The Wicked Flea Apr 13 '09 at 16:39
vote up 3 vote down

Also note that if you want to apply an instance method to an array, you need to pass the function as:

call_user_func_array(array($instance, "ClassName"), $myArgs);
link|flag

Your Answer

Get an OpenID
or
never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.