2012-03-23 7 views

答えて

3

このようなことができます。

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

パーフェクト、ありがとうございました! – dzm

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

+0

私は 'mktime'がはるかに高速で、何らかの整数の乗算/加算を解析しないと言う必要があります。それは私の頭に来たばかりの最初のものでした。私は 'mktime'を使用します。 –

+0

ありがとうJuan - 私はAndrewRと一緒に行くつもりですが、あなたも投票しました。 – dzm

0

は今午前16時22分で、15:20

あなたは明日たいです

あなたのため

最良の方法は、関数を作成することです ポスト時間+と分+あなたは越えたい - 時間の純粋な違い)。このようにすることで、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

関連する問題