2012-04-23 175 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"); 
} 

这是基于服务器的日期会/时间