Hello Rasmus, RL> In 5.1 this now throws an E_STRICT instead of a warning. It is still a RL> bad idea to pass a tempvar by reference, so yes, you should strive to RL> write E_STRICT clean code.
At the possible expense of being blamed and flamed, I'll say it... ifsetor($var, 'default') would go a long way to accommodate E_STRICT code. -- Best regards, Jason mailto:[EMAIL PROTECTED] Wednesday, April 26, 2006, 6:41:26 PM, you wrote: RL> Brian Moon wrote: >> In PHP4, you could do: >> >> function test() >> { >> return array(1,2,3); >> } >> >> $var = array_shift(test()); >> >> PHP 5.0 broke this. There was a fatal error on the array_shift that >> only variables could be passed by reference. There was a good argument >> for it. So, we started migrating our code. >> >> Well, seems this works in 5.1. So, my question is, was it an >> intentional "fix" or will this break again and we need to continue to >> watch for this? RL> In 5.1 this now throws an E_STRICT instead of a warning. It is still a RL> bad idea to pass a tempvar by reference, so yes, you should strive to RL> write E_STRICT clean code. RL> -Rasmus -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php