2012-03-23 35 views

回答

3

你可以做這樣的事情。

$nextTime = mktime(16, 0, 0); 
if($nextTime < time()){ 
    $nextTime += 86400; 
} 
+0

完美,謝謝! – dzm 2012-03-23 03:57:59

4

打電話給strtotime("4pm")會給你今天下午4點的時間。如果是已經過去的下午4點,你可以添加60*60*24給定的時間戳

// Example blatantly copied from AndrewR, but it uses strtotime 
$nextfourpm = strtotime("4pm");  
if ($nextfourpm < time()) { 
    $nextfourpm += 60*60*24; 
} 
+0

我不知道strtotime或mktime是否更快。 – AndrewR 2012-03-23 01:01:36

+0

我不得不說'mktime'要快得多,沒有解析任何東西只是一些整數乘法/加法。這只是我頭上的第一件事。我會使用'mktime'。 – 2012-03-23 01:02:45

+0

謝謝胡安 - 我要和AndrewR一起去,但是也投了你的票。 – dzm 2012-03-23 03:57:06

0

現在是15:20

你想明天16:22

最好的辦法是創建功能通過發佈時間+和分鐘+你想超越 - 純粹的時間差異)。通過這種方式,PHP不會犯任何錯誤。而PHP在處理日期和內容時可能會犯錯誤。

//stuff to post.. 
$hour = 25; 
$minute = 2; 

      function makemydate($hour,$minute) 
      { 
       if($hour > 0) 
       { 
       $hour = ($hour*3600); 
       } 

       if($minute > 0) 
       { 
       $minute = ($minute*60); 
       } 

      $add = ($hour+$minute); 
      $now = time(); 

      $unixtimestamp = ($now+$add); 
      return $unixtimestamp; 
      } 

    echo makemydate; 

你去那裏的Unix時間戳。您需要任何指定時間:P

相關問題