[英]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()
方法,可將變量轉換為整數。 傳入變量作為參數。
<?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.