开发者

Using AND vs && in a for loop (Not related to precedence?)

开发者 https://www.devze.com 2022-12-18 18:12 出处:网络
Why开发者_开发问答 is it that this code prints \"Hello!\" four times and then prints \"1\": <?php

Why开发者_开发问答 is it that this code prints "Hello!" four times and then prints "1":

<?php
for ($i=1 AND $blah=1; $i<5; $i++) echo("Hello!");
echo($blah);
?>

While this doesn't print out "Hello!" at all and then prints "1":

<?php
for ($i=1 && $blah=1; $i<5; $i++) echo("Hello!");
echo($blah);
?>

I know AND and && have different precedences, but that doesn't seem to apply here. What am I missing? (I'm using a variant of the code above, since I will use $blah within the for loop, and I want to set the value for it). Thanks for any help!


@OP, please read this doc. It explains the difference under Example #1 logical operators


I doubt that either the AND or && are what you're looking for here. If you want to execute both $i=1 and $blah=1 in the initialization expression, you need to separate them with a comma:

for ($i=1, $blah=1; $i<5; $i++) echo("Hello!");
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号