为什么这段代码有意义?

时间:2016-02-04 16:25:06

标签: php

这是代码

<p>We are going to flip a coin until we get three heads in a row!</p>

<?php
$headCount = 0;
$flipCount = 0;
while ($headCount < 3) {
    $flip = rand(0, 1);
    $flipCount ++;
    if ($flip) {
        $headCount ++;
        echo "<div class=\"coin\">H</div>";
    } else {
        $headCount = 0;
        echo "<div class=\"coin\">T</div>";
    }
}
echo "<p>It took {$flipCount} flips!</p>";
?>

我玩过Java,但我现在正在学习PHP。这里没有意义的部分就是这个。

if ($flip) {
    $headCount ++;
    echo "<div class=\"coin\">H</div>";
}

这里究竟检查了什么?我怀疑是否正在检查$flip是否属实。

1 个答案:

答案 0 :(得分:0)

这是这类语言的常用速记。一旦你习惯它,它似乎很自然。

在这种情况下,

if ($flip)

相当于:

if ($flip == 1)

但PHP实际上只是在检查一个&#34; truthy&#34;值:true,不为零,不是"0""",不是[],其他人将评估为true并通过if ($flip)测试