Operator Precedence

From: Date: Fri, 10 May 2002 17:27:04 +0000
Subject: Operator Precedence
Groups: php.dev 
Request: Send a blank email to php-dev+get-83884@lists.php.net to get a copy of this message
Hello php-dev, Why & How this code will work? <? function foo($flag) { return $flag; } $a=TRUE; echo "if (!\$a = foo(FALSE))) is "; if (!$a = foo(FALSE)) echo "true"; else echo "false"; echo "\n"; var_dump($a); echo "\n"; ?> Output: if (!$a = foo(FALSE))) is true bool(false) http://www.php.net/manual/en/language.operators.php "Operator Precedence" ! has more precedence than = And after ! we must have boolean constant in left side: FALSE = foo() Explain to me pls that I do not understand P.S. in C & Perl (!$a = foo()) is not valid expression Best regards, Andrew Sitnikov e-mail : sitnikov@infonet.ee GSM: (+372) 56491109

« previous php.dev (#83884) next »