PHP语句没有评估我的期望

时间:2015-05-13 13:03:47

标签: php

我有以下代码:

<?php

$starting_id = 0;

$params = array ('val' => $starting_id);

echo parse_params ($params);

function parse_params ($params)
{
    $query = ' WHERE ';
    if ($params['val'] === NULL) {
        $query .= ' IS NULL';
        return $query;
    }
    if ($params['val'] == 'NOT NULL') {
        $query .= ' IS NOT NULL';
        return $query;
    }    
    return $query.' = '.$params['val'];
} 

当我运行它时,我希望看到这个:

WHERE 

相反,我得到以下内容:

WHERE IS NOT NULL

任何想法为什么?

1 个答案:

答案 0 :(得分:1)

根据PHP类型比较表,

$var = 0 ; // (int)

如果您比较$var == "string"

它将返回true,您需要输入检查

$var === "string"

检查php类型comparison