Chris Boget wrote:
> function test() {
> static $i = 0;
>
> $i++;
> $retval = ( $i <= 10 ) ? $i : '';
>
> return $retval;
>
> }
> while( $bob = test()) {
> echo $bob . '<br>';
>
> }
>
> You would expect the while loop to go on forever just looking
> at the above code.
I wouldn't, but apparently you do. :)
> However, what's happening is that when the
> empty string is getting returned due to $i being > 10, the while
> loop is resolving FALSE when $bob is set to the value of the
> empty string.
> Is there any way that I can force this not to happen? That the
> while loop resolves as FALSE only when the function actually
> returns a (boolean) FALSE value?
while ( ($bob = test()) !== false ) {
echo $bob . '<br>';
}
should do the trick.
HTH
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php