On 5/7/06, Chris Jenkinson <[EMAIL PROTECTED]> wrote:
Hi,
Currently I have a function which accepts a limited number of parameters:
call_function($function_name, &$var_1, &$var_2);
I wish to modify the function to accept an indefinite number of
parameters, which may or may not be references.
The function call_function() then calls the function specified in
$function_name, with the variables passed as parameters to that function.
Is this possible? Thanks for any help which can be offered.
Chris
--
Chris Jenkinson
[EMAIL PROTECTED]
"Mistrust all in whom the impulse to punish is powerful."
-- Friedrich Nietzsche, Thus Spoke Zarathustra
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
One thing you could do is (assuming it's php4)
<?php
function printArray($array) {
echo '<pre>';
print_r($array);
echo '</pre>';
}
function call_function($name, &$params) {
call_user_func($name, $params);
}
function test(&$params) {
extract($params, EXTR_REFS);
printArray($myarray1);
printArray($myarray2);
// prove this is a reference by modifying it
$myarray2 = array('one', 'two', 'three');
}
$myarray1 = array(3, 6, 9);
$myarray2 = array('two', 'four', 'six');
$myParams['myarray1'] =& $myarray1;
$myParams['myarray2'] =& $myarray2;
call_function('test', $myParams);
// myarray2 now has the values set in test
printArray($myarray2);
?>
Output:
Array
(
[0] => 3
[1] => 6
[2] => 9
)
Array
(
[0] => two
[1] => four
[2] => six
)
Array
(
[0] => one
[1] => two
[2] => three
)
This is a bit of a pain though. :)
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php