PHP变量未显示为整数

时间:2014-01-07 21:30:09

标签: php

if($koltukk%4 == 2){
    if($koltukk > 1000){
    $koltukH = "B";
    (int)$koltukR = ($koltukk / 4) + 1;//Doesnt work (int)
            }
    else{
    $koltukH = "E";
    (int)$koltukR = ($koltukk / 4) + 1;//Doesnt work (int)

        }


    }

$koltukR = ($koltukk / 4) + 1; 

我想将$ koltukR变量作为整数但我不能这样做(int)不起作用

5 个答案:

答案 0 :(得分:1)

您需要在赋值运算符的另一侧使用(int)转换:

$koltukR = (int)(($koltukk / 4) + 1);

或者,像这样使用intval()

$kolturR = intval(($koltukk / 4) + 1);

答案 1 :(得分:0)

$koltukR = intval(($koltukk / 4) + 1);

你应该使用更好的变量名,将数学移出if / else,因为两者都是相同的,你甚至不需要手动将它转换为int。

答案 2 :(得分:0)

PHP有一个intval()方法,可以将变量转换为整数。将变量作为参数传递。

intval()

答案 3 :(得分:0)

<?php

if($koltukk%4 == 2)
{
    if($koltukk > 1000)
    {
        $koltukH = "B";
        $koltukR = (int)(($koltukk / 4) + 1);
    } else{
        $koltukH = "E";
        $koltukR = (int)(($koltukk / 4) + 1);    
    }
}

echo $koltukR;

?>

答案 4 :(得分:0)

这里有一个重要的注意事项:intval()不是round()。 intval()类似于floor()。

我认为你真正想要的是round():

这是真正的答案:K.I.S.S。

if($k%4 == 2){
    if($k > 1000){
        $H = "B"    
    }
    else{
        $H = "E";
    }    
}
$R = round($k / 4) + 1;

http://us2.php.net/intval窃取示例以说明:

echo number_format(8.20*100, 20), "<br />";
echo intval(8.20*100), "<br />";
echo floor(8.20*100), "<br />";
echo round(8.20*100), "<br />";

819.99999999999988631316
819
819
820