2017-03-14 23 views
0

我在csv中读取并将其放入多维数组中对负数进行测试

根据某个项目的数组值之一读取行颜色。这适用于小于阈值的正值,但对于负值,它不能满足此情况,因此对于cxy值低于-8的打印,-30,-24正在打印校正,但行不会根据条件进行编辑。这是为什么?

$rows = array_map('str_getcsv', file($_GET['result_view'])); 
$header = array_shift($rows); 
$csv = array(); 
foreach($rows as $row) { 
    $csv[] = array_combine($header, $row); 
} 

foreach($csv as $row){ 

    if ($row["cxy"] < 10) { 
     print('<tr bgcolor="#ff0000">'); 
    } 
    else 
    { 
     echo "<tr>"; 
    } 

    foreach ($row as $cell) { 
     echo "<td>" . ($cell) . "</td>"; 
    } 
    echo "</tr>\n"; 
+0

我已经使用在这种情况下类型转换,但结果 – Umar

+0

没有改变企图@CBroe即使PHP无法将一个数字字符串转换为一个数字字符串(它是btw),它会将该字符串评估为'0',它仍然是<10。 – roberto06

+1

var_dump($ row [“cxy”])''和'var_dump((int)$ row [“cxy”])'回显您的问题值? – roberto06

回答

0

演员使用intval功能您$row["cxy"]

if (intval($row["cxy"]) < 10) 
+0

它可以是评论,而不是回答。 – Deep

+0

试过intval和(int)甚至(float) – Umar