2011-11-11 70 views
3

如果我有一個變量的值,例如10.2333,我需要使用2333的23個值,我該怎麼做?欲瞭解更多信息,我工作了一個時間差:php在十進制後得到的值

$started = $_SESSION['now']; 
$ended = time(); 
$time1 = $ended - $started; 
$time2 = $time1/60; 

$時間2給我,例如10.233

+0

你需要輪對剩下的地方了,或者只是截斷他們走? –

回答

6

這應該給你想要的東西。

$time3 = (int)($time2 * 100) % 100; 

編輯:問題原來是不同的。要獲得unix時間戳的分鐘和秒鐘,您應該執行以下操作。

$minutes = ($time1/60) % 60; 
$seconds = $time1 % 60; 
+0

我一直在嘗試這一個,不太工作,例如: $ started =18907; $ ended =20026; $ time1 = $結束 - $開始; $ time2 = $ time1/60; $ time3 =(int)($ time2 * 100)%100;給我:19分鐘&64秒,secons是錯誤的。 – Wilest

+2

你可能會問這個問題是錯誤的。此代碼爲您提供小數部分的前兩位數字。如果你想獲得一個unix時間戳秒,你應該嘗試$分鐘=($ time1/60)%60和$秒= $ time1%60 –

+0

謝謝,這個解決了它! – Wilest

5
<?php 
    list($before_dot, $after_dot) = explode('.', $time2); 
    $result = substr($after_dot, 0, 2); 
?> 
1

像這樣的東西可能會奏效:

round(($time2 - (int)$time2) , 2);