有php运算符的问题

时间:2012-08-13 19:53:32

标签: php operator-keyword

我想比较两个值,如果一个值大于另一个值,那么它会在数据库中执行一些更新,但结果总是返回false。这是我正在努力解决的部分代码的一个例子:

<?php 
$page = mysql_fetch_object(mysql_query("SELECT * FROM `site` WHERE `id`='{$posts['him']}'"));
$count = file_get_contents($site->site_url . 'count/numbercheck.php?url=' . ($page->url));
if(is_numeric($count) && $count > $posts['count'])
{
    echo 'true';
}else{
    echo 'false';   
}

?>
这回事是假的。 $ posts ['count']来自另一页的jquery帖子。我确信$ count大于$ posts ['count']。然后我确实做到了这一点:

<?php 
$page = mysql_fetch_object(mysql_query("SELECT * FROM `site` WHERE `id`='{$posts['him']}'"));
$count = file_get_contents($site->site_url . '/count/numbercheck.php?url=' . ($page->url));
if(is_numeric($count) && $count > $posts['count'])
{
    echo 'true' . $count . ' ' . $posts['count'];
}else{
    echo 'false' . $count . ' ' . $posts['count'];  
}

?>

返回“false 86 85”。我不懂,我做错了什么?我清楚地知道86大于85。

1 个答案:

答案 0 :(得分:3)

file_get_contents()返回一个字符串值,因此在使用false

时,它总是会评估为is_numeric()

如果要返回一个数组(文件中每行一个项目),则应使用file()代替file_get_contents()