dptr1988 Posted July 6, 2006 Share Posted July 6, 2006 I'm wanting to pass an array by reference to a function. But I get a warning.Here is the warning:[code][06-Jul-2006 11:13:30] PHP Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of copy_array(). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in C:\FTB\dptr1988.mooo.com\htdocs\walk.php on line 137[/code]Here is the function declaration:[code]<?phpfunction copy_array($source, &$dest){ foreach($source as $key => $value) { $dest[$key] = $value; }}?>[/code]Here is how I call the function:[code]<?phpcopy_array($newstats, &$stats);?>[/code]I've read the manual and my code seems correct but I still get that warning. Is my function definition wrong?Thanks Quote Link to comment https://forums.phpfreaks.com/topic/13877-trouble-with-call-time-pass-by-reference/ Share on other sites More sharing options...
Barand Posted July 6, 2006 Share Posted July 6, 2006 Call like this, withoutthe "&"[code]copy_array($newstats, $stats);[/code]However, you might find it simpler to[code]$stats = $newstats;[/code]to copy the array Quote Link to comment https://forums.phpfreaks.com/topic/13877-trouble-with-call-time-pass-by-reference/#findComment-54074 Share on other sites More sharing options...
dptr1988 Posted July 6, 2006 Author Share Posted July 6, 2006 Thank you barand. It works now.The reason I made the copy_array() function is that $newstats only contains some of the items that $stats contains. So it's just updating some of the items in $stats rather than copying the whole arrayThanks again Quote Link to comment https://forums.phpfreaks.com/topic/13877-trouble-with-call-time-pass-by-reference/#findComment-54138 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.