2012-04-23 91 views
0

我正在使用此代碼重定向基於一天中的小時和一週的一天。在確切日期的PHP重定向

這..

<?php 

$hour = date('G'); 
$minute = date('i'); 
$day = date('w'); 
$m = $hour * 60 + $minute; // Minutes since midnight. 

if (
    $day == 0 // Sunday... 
    && $m >= 615 // ... after 10:15… 
    && $m <= 700 // ... but before 11:40… 
) { 
    header("Location: open.php"); 
} 
else 
if (
    $day == 3  // Wednesday... 
    && $m >= 1125 // ... after 18:45… 
    && $m <= 1235 // ... but before 20:35… 
) { 
    header("Location: open.php"); 
} 

?> 

我想知道是否有辦法來重定向到基於未來像4月25日或11月1日的確切日期的頁面。

謝謝。

+0

所以你只想重定向,如果它在特定的一天的時間'open.php'?或者如果是那些特定的時間或特定的一天? – Ben 2012-04-23 23:23:58

回答

2

這是一個簡單的方法,不考慮年份日期:

// 25th april: 
if (date('d') == '25' && date('m') == '4') { 
    header('Location: open.php'); 
} 
// 1st nov: 
if (date('d') == '1' && date('m') == '11') { 
    header('Location: open.php'); 
} 

看那date() documentation爲更確切的細節。

+0

是的,這是工作。謝謝 – user990175 2012-04-23 23:35:48

1

轉換重定向日起時間戳使用strtotime()date(),你可以很容易地

if(strtotime("2012/5/3") <= time()) { 
    header("location: toredirect.php"); 
    exit; 
} 
1

當然做到這一點。

$date = date(); 
$redirectDate = Date here; 

if($date == $redirectDate) { 
    header("Location: open.php"); 
} 

這是基於服務器的日期會/時間