0
我做了一些有效的代碼,但它看起來效率很低。我在畫布上繪製圓圈以顯示在工作日內發生事件的時間。要做到這一點,我發現這一天發生的秒數,然後將其轉換爲分鐘顯示。計算事件發生當天的第二天
我的問題是爲什麼我必須去strtotime(date('...',strtotime(time)))
並調用strtotime兩次?
當我剛剛像strtotime(date('Y-m-d',time)
那樣,我會得到一個負值。
<?php
$time_concerned = '2014-10-31 02:00:00';
$start_day_temp = strtotime(date('Y-m-d',strtotime($time_concerned)));
$end_day_temp = strtotime(date('Y-m-d H:i',strtotime($time_concerned)));
$num_seconds = $end_day_temp - $start_day_temp;
//divide by 60 to get minutes. divide in half to make fit on 720 scale.
$num_conv_minutes = (($num_seconds/60)/2);
echo ' ctx.fillStyle = "#00FF00";';
echo ' ctx.beginPath();';
echo ' ctx.arc('.$num_conv_minutes.'+ x_inbound,y_truck_arrivals,5,0,2*Math.PI);';
echo ' ctx.fill();';
echo ' ctx.stroke();';
?>
謝謝!清理它一點點。我想沒有辦法繞過使用strtotime()來找到一天的開始。 – sweaty 2014-10-31 14:21:01
還有其他方法可以做到,但這種方式可能是最快的。 – 2014-10-31 14:23:14