note 36271 deleted from function.func-get-arg by nlopess

From: Date: Thu, 18 Dec 2003 09:43:43 +0000
Subject: note 36271 deleted from function.func-get-arg by nlopess
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-62162@lists.php.net to get a copy of this message
Note Submitter: Ron Tidd ---- Looked for a way to use variable number of args with some being passed by reference... TRIAL AND ERROR SHOWS: You can combine both methods - sloppy but it works. You DO have to specify the by reference variables though in the function declaration... <?php function foo($one, &$myref) { $numargs = func_num_args(); echo "FOO: Number of arguments: $numargs<br>\n"; if ($numargs >= 2) { $secondone=func_get_arg(1); echo "FOO: Second argument is: $secondone<br>\n"; $myref += 20; $secondone += 10; echo "FOO: Second argument is: $secondone<br>\n"; } $arg_list = func_get_args(); for ($i = 0; $i < $numargs; $i++) { echo "FOO: Argument $i is: " . $arg_list[$i] . "<br>\n"; } } $myvar = 2; echo "\$myvar = $myvar <br />\n"; echo "Calling foo(1, $myvar, 3, $myvar, 5);<br />"; foo (1, $myvar, 3, $myvar, 5); echo "\$myvar = $myvar <br />\n"; /************************************************ OUTPUT.... $myvar = 2 Calling foo(1, 2, 3, 2, 5); FOO: Number of arguments: 5 FOO: Second argument is: 2 FOO: Second argument is: 12 FOO: Argument 0 is: 1 FOO: Argument 1 is: 22 FOO: Argument 2 is: 3 FOO: Argument 3 is: 2 FOO: Argument 4 is: 5 $myvar = 22 *************************************************/ ?>

« previous php.notes (#62162) next »