Reply to Re: A change in the handling of function arguments

Your name:

Reply:


Posted by petersprc on 01/21/08 00:12

In E_ALL | E_STRICT mode, the warning is: PHP Strict Standards: Only
variables should be passed by reference

array_shift expects a variable, but the newer php considers the
argument being passed an anonymous value it seems...

You can fix this by doing $rest = func_get_args() before array_shift.

On Jan 20, 5:16 pm, Csaba Gabor <dans...@gmail.com> wrote:
> Between Dec 16, 2005 and May 31, 2006 a significant change occurred in
> one aspect of how php (version 5.1 on Win XP) arguments are handled.
> Consider the following script which changed behaviour in that
> timeframe:
>
> <?php
> // Will func2 show 3 or 4 args from the following call?
> argTester("func2", "two", "three", "four");
>
> function argTester() {
> // does a call to its first argument
> print "in argTester with " . func_num_args() . " args;";
> print " arg1: " . func_get_arg(0) . "\n\n";
> return call_user_func_array (
> "".array_shift($argsRest=func_get_args()), $argsRest); }
>
> function func2 ($arg0) {
> // displays its arguments
> $aArg = func_get_args();
> print "In " . __FUNCTION__ . " with " . func_num_args();
> print " args: " . implode("; ", $aArg); }
> ?>
>
> Should func2 show 3 or 4 arguments based on the last line of
> argTester?
>
> What I would like to determine is why the change came about,
> and whether it was intentional or an artifact due to something else.
> Could anyone point me to the proper group or person, please.
>
> Thanks,
> Csaba Gabor from Vienna

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация