<?php
function test(float $a) {
    if ($a) var_dump("1");
    if (!$a) var_dump("2");    
    var_dump((bool) $a);
    var_dump(!$a);
    echo "\n";
}
function test1(float $a, bool $b) {
    var_dump($a && $b); //JMPNZ_EX 
}
function test2(float $a, bool $b) {
    var_dump($a || $b); // JMPZ_EX
}
test(NAN);
test(1.0);
test(0.0);

test1(NAN, true);
test1(1.0, true);
test1(0.0, true);
echo "\n";

test2(NAN, false);
test2(1.0, false);
test2(0.0, false);
?>