これはハマった。。。


スケジュール表とかを作成するとき、時間の演算を行うんだけど、
時間だと日をまたぐときもそうだけど、変換変換で一苦労。。。


特に10:00とか06:00とかそのまま演算できればどんなに便利なことか。

そこでちょっと作成してみたので残しておきます。

演算した後時間に変換する感じです。


sprintf("%02d:%02d", floor(($i*30 - 30)/60), ($i*30 - 30)%60);


floor(($i*30 - 30)/60)

$iが4だと 

(4×30 -30) / 60 = 1

floorで小数点以下切り捨て


($i*30 - 30)%60

ここで割った余り⇒30

最後sprintfで表示形成

01:30