Search code examples
phpcomparisonoperator-precedenceconditional-operator

Ternary expression containing loose comparison in else branch yields unexpected result


Could someone help me with this code? On my website, there is no result.

<?php
if (isset($_GET['id']) ? $product['valid2'] : ''==1) {
    echo "Yes";
} elseif (isset($_GET['id']) ? $product['valid2'] : ''==0) {
    echo "No";
}

Solution

  • I solved it with this function:

    <?php
              
    $v2 = isset($_GET['id']) ? $product['valid2'] : '';          
     
              
    if ($v2==1) {
        echo "Yes";
    } elseif ($v2==0) {
        echo "No";
    }
    
    ?> 
    

    Thanks for all answers!