2011-11-06 37 views
0

您好我想創建一個PHP計算器基本上做到這一點:PHP計算器功能變量和時間

$price_m_Fuengirola = 11.00; 

/* number of people */ 

$car1 = 0.00; /* 1-4 */ 
$car2 = 50.00; /* 4-8 */ 
$car3 = 70.00; /* 8-12 */ 
$car4 = 90.00; /* 12-16 */ 

/* Calculator */ 

date_default_timezone_set('GMT'); 

//echo $newTime; 

echo $price_m_Fuengirola."<br />"; 

echo $car2."<br />"; 

function timeCalc(){ 
$newTime = date("H:i", time()); 

if ($newTime < "18:56"){ 

    echo 20.00; 
    //echo "<br />this is more time"; 

} else { 

    echo 6.00; 
    //echo "this is more time"; 

} 
} 


$timeCalc = timeCalc(); 

echo $timeCalc."<br />"; 

$total = $price_m_Fuengirola + $car2 + $timeCalc."<br /><br />"; 

echo $total;` 

其背後的邏輯是,如果一個人×時間之前下訂單了一輛出租車,然後他們得到充電X別的他們收取x(我計劃改變它,當我設法得到它的工作),問題是價格被添加到汽車價格,但不是功能價格輸出。在函數中,我試圖只回顯一個不意味着是時間的數字,所以我錯過了什麼?

回答

1

這裏是我的特別看法:

<?php 

function rateOffset($now, $cutoff){ 
    if ($now < strtotime($cutoff)){ 
     return 20.00; 
    } else { 
     return 6.00; 
    } 
} 

$cutoff = "18:56"; 

for ($i = 0; $i < 24; $i++) { 
    $now = strtotime("$i:00"); 
    $rateCalc = rateOffset($now, $cutoff); 
    echo date('H:i', $now)." = $rateCalc\n"; 
} 

?> 

http://ideone.com/owfLg

注意,我比較兩個參數,$now(這是一個時間戳),和$cutoff,這是截止的hh:mm表示時間檢查。該for循環是展示每小時的結果,這將是:

00:00 = 20 
01:00 = 20 
02:00 = 20 
03:00 = 20 
04:00 = 20 
05:00 = 20 
06:00 = 20 
07:00 = 20 
08:00 = 20 
09:00 = 20 
10:00 = 20 
11:00 = 20 
12:00 = 20 
13:00 = 20 
14:00 = 20 
15:00 = 20 
16:00 = 20 
17:00 = 20 
18:00 = 20 
19:00 = 6 
20:00 = 6 
21:00 = 6 
22:00 = 6 
23:00 = 6 
+0

感謝您的信息賈裏德Farrish,誰需要編輯這不是一個PHP的人的傢伙,所以有反正我們可以把它像我一樣更具可讀性? –

+0

我不確定你的意思。 –