变量比较php(strcmp),等式失败

时间:2016-08-03 12:07:37

标签: php

我有功能

if ((isset($_REQUEST['onlinca']) && $_REQUEST['onlinca'] == true)) {
    $resultintca = mysqli_query($maincon, "SELECT * FROM Exten");
    while ($row = mysqli_fetch_assoc($resultintca)) {
        $indexintca = $row['Index'];
        if (($indexintca !== $v[6])) {
            echo "notEqual";
            print_r ($indexintca);
            print_r ($v[6]);
            echo "<br>";
        }
    }
}

输出

notEqual301304
notEqual302304
notEqual303304
notEqual304304
notEqual305304
notEqual306304
notEqual307304

依此类推,但不必打印Equal304304,因为变量是相同的。 我也尝试使用 strcmp 来做到这一点,但输出是相同的。

1 个答案:

答案 0 :(得分:4)

!==是一个strict comparison operator,可以比较值类型。因此,赔率$indexintca$v[6]的数据类型不同。 ($indexintca可能是一个字符串,$v[6]是一个整数。因此,请将!==更改为!=,以便您只比较值:

if (($indexintca != $v[6])) {