Echo返回数字而不是字符串

时间:2012-08-30 10:58:18

标签: php sql echo rounding

为什么echo提供16而不是SQL查询UPDATE...

for ($i=0;...) {
    $lat = round(($deg + $min/60 + $sec/3600),6);

    $query = "UPDATE `Parking` 
              SET lat=" . $lat . " 
              WHERE id = " . $i+16 . "";
    $result=ejecutar_query($query);
    echo $query;
}

2 个答案:

答案 0 :(得分:3)

试试这样:

 $query = "UPDATE `Parking` 
           SET lat=" . $lat . " 
           WHERE id = " . ($i+16);
 $result=ejecutar_query($query);
 echo $query;

这可以吗?

答案 1 :(得分:2)

正确的代码是(检查:($ i + 16)):

for ($i=0;...) {
    $lat = round(($deg + $min/60 + $sec/3600),6);

    $query = "UPDATE `Parking` 
              SET lat=" . $lat . " 
              WHERE id = " . ($i+16) . "";
    $result=ejecutar_query($query);
    echo $query;
}

因为PHP不是类型化语言,所以+运算符会将所有内容转换为int。