note 36271 added to function.func-get-arg

From: Date: Fri, 03 Oct 2003 00:58:45 +0000
Subject: note 36271 added to function.func-get-arg
Groups: php.notes 
Request: Send a blank email to php-notes+get-57639@lists.php.net to get a copy of this message
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 *************************************************/ ?> ---- Manual Page -- http://www.php.net/manual/en/function.func-get-arg.php Edit Note -- http://master.php.net/manage/user-notes.php?action=edit+36271 Delete Note -- http://master.php.net/manage/user-notes.php?action=delete+36271&report=yes Reject Note -- http://master.php.net/manage/user-notes.php?action=reject+36271&report=yes

« previous php.notes (#57639) next »