2015-07-20 51 views
1

我將這些數字分開;二十五分之十六並得到0,我想0.64PHP劃分給出0

我的代碼:

echo 16/25; 

我從我的.html文件獲取這些數字和剛纔的代碼,簡單給你。

我的原代碼:

<html> 
<body> 
<?php 
$poolSize = (int)$_POST["poolSize"]; 
$turnoverTime = (int)$_POST["turnoverTime"]; 
$turnoverRate = (int)$_POST["turnoverRate"]; 

$pumpRequirement = 0; 
$filterAreaRequirement = 0; 


function calcPumpRequirement($poolSize, $turnoverTime){ 
    $pumpRequirement = round($poolSize/$turnoverTime); 
    echo $pumpRequirement."<br>"; 
} 

function calcFilterAreaRequirement($pumpRequirement, $turnoverRate){ 
    $filterAreaRequirement = $pumpRequirement/$turnoverRate; 
    echo $filterAreaRequirement; 
} 

calcPumpRequirement($poolSize, $turnoverTime); 
calcFilterAreaRequirement($pumpRequirement, $turnoverRate); 
?> 

</body> 
</html> 

對不起,我的新手的錯誤。今天剛剛開始PHP。

+1

您正在使用round()函數 – meen

+1

而不是函數'calcFitlerAreaRequirement',這是函數計算16/25 – Detilium

+1

@Detilium也許是因爲'$ pumpRequirement'等於0? – Daan

回答

3

您將$ pumpRequirement設置爲0.所以它將始終爲0.您需要將其設置爲函數外部。

function calcPumpRequirement($poolSize, $turnoverTime){ 
    $pumpRequirement = round($poolSize/$turnoverTime); 
    echo $pumpRequirement."<br>"; 
    /// return value 
    return $pumpRequirement; 
} 

$pumpRequirement = calcPumpRequirement($poolSize, $turnoverTime); 
calcFilterAreaRequirement($pumpRequirement, $turnoverRate); 
+0

是的正是這個:) –

2

首先,查看關於Variable Scope的手冊。

最後,echo 16/25效果很好。你的問題是你期望你的$filterAreaRequirement var在你願意改變它的函數範圍之外被改變。

+1

使它與'全球'工作。謝謝。我爲我的菜鳥錯誤感到抱歉。今天剛剛開始使用PHP。 – Detilium