2011-03-21 20 views
1

調用如何優化這樣的:優化日期()和的strtotime()函數在PHP

$enddatetime = date("YmdHis", strtotime(date("YmdHis", strtotime($session_date.' '.$session_time)) . " + ".$session_duration." minutes")); 

例如值:

$session_date 2011-01-31 
$session_time 19:30:00 
$session_duration 100 
+0

非常難讀,我想這不會不管多少,但你能或許提供了一個正在運行的腳本,爲什麼你要優化告訴你那? (或者讓我說:以什麼方式,性能?可讀性?) – edorian 2011-03-21 17:06:38

回答

0

好了,所以基本上你正在做一頭牛,把將它倒入漢堡包中,灑上一點鹽,然後再將鹹的漢堡包粘回牛中。

爲什麼重複往返通過date-> strtotime-> date等...?這非常低效。 PHP的本地日期/時間格式是Unix風格的時間戳 - 自1970年1月1日以來的秒數。

$timeval = strtotime($session_date . ' ' . $session_time); 
$adjusted_timeval = $timeval + ($session_duration * 60); 
$fancy_datetime = date("YmdHis", $adjusted_timeval); 
+0

爲漢堡牛類比做帽子! – siliconpi 2011-03-21 17:11:11

0

最好的,我能想到的是:

$enddatetime = date("YmdHis", strtotime($session_date.' '.$session_time) + (60*$session_duration));