我知道我可以做一個正常的循環與全整數這樣For循環遞增時間45分鐘
for($i=0;$i<10;$i++)
{
echo $i;
}
問題:
我通過一個循環不是整數,但與
要循環漂浮
次(45分鐘)。我想要的結果是這樣的:
0.45
1.30
2.15
3.00
3.45
...
PHP中是否有任何幫助函數來實現它?
我知道我可以做一個正常的循環與全整數這樣For循環遞增時間45分鐘
for($i=0;$i<10;$i++)
{
echo $i;
}
問題:
我通過一個循環不是整數,但與
要循環漂浮
次(45分鐘)。我想要的結果是這樣的:
0.45
1.30
2.15
3.00
3.45
...
PHP中是否有任何幫助函數來實現它?
閱讀註釋,並看到你真的想用時間來工作,你甚至可以用一個DateTime
對象內部的for循環
下面是一些示例代碼:
for (
$d = new DateTime('00:00'), // Initialise DateTime object .
$i = new DateInterval('PT45M'); // New 45 minute date interval
$d->format('H') < 10; // While hours (24h) less than 10
$d->add($i) // Add the interval to the DateTime object
)
{
echo $d->format("H:i\n");
}
+1給你先生。刪除我的答案,這是好得多。 –
也許是這樣的:
for ($i=1; $i<=10; $i++) {
echo $i * 0.45."<br />";
}
我不會依賴於該浮點數。原因是四捨五入。
你通常做的是使用一個int,然後除法。
for($i=0, $j=0; $i < $MAX; $i += 45, $j = $i/100)
{
echo $j;
}
你可以簡單的使用
for($i=0.0;$i<10.0;$i=$i+0.45)
{
echo $i;
}
我不知道我會使用浮點值來控制循環本身,尤其是考慮到他們的不精確性傾向:-)
由於您似乎有一個公式,您可以簡單地使用循環內的公式:
for ($i = 0; $ < 10; $i++) {
$num = 0.45 + $i * 0.85;
echo $num;
}
這允許循環由一個整數控制,並且簡單地給出基於該整數的浮點值。
你試過了嗎? PHP文檔沒有說明在for循環中不支持浮點數。 –
那些應該是時代? –
乘以100,循環再分。 – dmaij