fread返回字符串但只包含数字?

时间:2014-06-30 11:54:26

标签: php fread

我是PHP新手。目前,我正试图在我的天气网站上实施它。

我的气象站软件读取数据并将.txt文件上传到我的FTP,其中包含22.3这样的数字,总是一个点,总是一个小数。

在我的index.php中,我使用以下代码读取此文件:

    <?php
    $temp_nu = fopen("data/temp_nu.txt", "r") or die("Data saknas, temp.nu.txt"); 
    echo fread($temp_nu, filesize("data/temp_nu.txt"));
    fclose($temp_nu); 
    ?>

现在这部分工作正常,但我希望能够根据温度改变字体颜色。所以我正在寻找类似的东西:

    if ($temp_nu1 > 20) {
        echo "<p style=color:'red'>", $temp_nu1, "</p>";
    } else {
        echo $temp_nu1;
    }

然而这不起作用,事实上我已经意识到PHP将我的变量视为一个字符串,我认为它不会因为我已经读过如此多的关于PHP的信息而已。 &#34;松散的数据类型langauge&#34;。我已多次尝试将其转换为浮点数或整数但未成功。

任何帮助都会受到极大的关注! 提前谢谢,

PS。可在此处查看文本文件:http://retzner.se/anders/vader/lund/data/temp_nu.txt。 DS

2 个答案:

答案 0 :(得分:0)

使用此:

$temp_nu1 = trim(file_get_contents("data/temp_nu.txt"));

我猜你在文件中有换行符。

答案 1 :(得分:0)

您可能需要对类型进行类型转换: - 尝试一下。

if (floatval($temp_nu1) > floatval(20)) {
    echo "<p style='color:red'> $temp_nu1 </p>";
 } else {
    echo $temp_nu1;
 }