0

2 つの値を比較したいのですが、一方が他方よりも大きい場合、データベースで何らかの更新を実行しますが、結果は常に 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';   
}

?>

これは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 より大きいことは明らかです。

4

1 に答える 1

3

file_get_contents()文字列値を返すため、常に次のように評価されfalseますis_numeric()

配列 (ファイルの各行に 1 つの項目) を返したい場合は、file()代わりに使用する必要があります。file_get_contents()

于 2012-08-13T19:57:47.627 に答える