|
Posted by Jerry Stuckle on 08/13/07 01:12
rob wrote:
> Hello,
>
> If I have an array made up of a bunch of key => value pairs, how can I
> pass the values of each key as an argument to a function, given that
> the number of items in the array are not static (i.e: sometimes
> there's one item, sometimes there's two)?
>
> For example, if I have the following array:
>
> $list = array('sky' => 'blue', 'grass' => 'green');
> $list = array_values($list);
>
> I'd like to pass the two values in $list to a function that has two
> arguments, i.e:
>
> function color($sky, $grass) { }
>
> The trick is is that $list will not always contain two items -
> sometimes one, three, four, etc, so it has to pass them dynamically to
> the function. I know about call_user_func(), and how I can pass
> parameters to it, but I'm having a difficult time trying to pass
> multiple parameters given that I don't know how many I need to pass.
>
> Can anyone help?
>
> Rob
>
Just pass them as an array, i.e.
color($list);
function color ($colors) {
if (is_array($colors))
foreach ($colors as $c)
process one color from the list here
else
process a single color here
}
You might want to make this a function which pulls out each item in the
list and calls another function to process a single color (if the
processing is separate, that is).
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@attglobal.net
==================
[Back to original message]
|