how to expand an array elements as separate parameters to a function
I have an array of colors having dynamic values which depends on database. now these values are required in a function which takes values only like this function('para1','para2','para3','para4') where param1开发者_运维百科 to param4 are color values in an array. Problem is how can i parse these values to that function in the above stated format.Only a programminng logic required.Language is php.
Suppose dynamic array is color[]=('red','maroon','blue','green'); and these value should be passed to this function like :setLineColor('red','maroon','blue','green');
I m using this function for creating graphs.(Lib using PHP_graphlib: link: http://www.ebrueggeman.com/phpgraphlib/documentation.php) Any other suggested library is welcomed.Plz provide a simple example with it.
Since PHP 5.6 you can use argument unpacking with the triple-dot-operator:
setLineColor(...$colors);
You can use the function call_user_func_array.
<?php
$colors = array('red','maroon','blue','green');
call_user_func_array('setLineColor', $colors);
?>
If you want to call the method of an object, you can use this instead:
<?php
$graph = new ...
$colors = array('red','maroon','blue','green');
call_user_func_array(array($graph, 'setLineColor'), $colors);
?>
function($color[0], $color[1], $color[2], $color[3])
精彩评论