Marek Kilimajer wrote:
Mike wrote:
You're assigning values in your test.
Use == instead of = in the if condition.
hmm, but he should not get what he gets anyways:
$a = 1 - evaluates to true, continue
$b = 0 - evaluates to false, so the whole if() condition is false, jump
to else and print:
ok, precedence :)
false
1
0
He gets:
true
false
0
I get (php-5.0.2):
false
false
0
Or am I missing something?
=M
-----Original Message-----
From: Hodicska Gergely [mailto:felho@xxxxxxxxxxxxxxxxx] Sent:
Saturday, October 30, 2004 9:50 AM
To: php-general@xxxxxxxxxxxxx
Subject: php compiler
Hi!
$a = 0;
$b = 1;
if ($a = 1 && $b = 0) {
echo 'true ';
var_dump($a);
var_dump($b);
} else {
echo 'false ';
var_dump($a);
var_dump($b);
}
Runing this we get: "true bool(false) int(0)"
After the precedence table the first step could be evaluating the &&,
but not this is what happen.
Can someone exactly explain how PHP process the condition?
THX in advance,
Felho
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php