簡體   English   中英

PHP變量未顯示為整數

[英]PHP variable is not shown as an integer

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)不起作用

您需要在賦值運算符的另一端使用(int)強制轉換:

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

或者,像這樣使用intval()

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

您應該使用更好的變量名,因為兩者相同,所以將數學移出if / else,甚至不需要手動將其強制轉換為int。

PHP具有intval()方法,可將變量轉換為整數。 傳入變量作為參數。

INTVAL()

<?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;

?>

這里的一個重要說明:intval()不是round()。 intval()與floor()類似。

我認為您真正想要的是round():

真正的答案是:吻

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM