使用以下if语句我试图检查星期几是否是星期五
if(($uur < 12) && ($min < 30) && ($datum == date('Y-m-d', strtotime('Friday'))))
{
$proceed = FALSE;
$errorWoensdagVrijdag = "<div id='row_form_dropdown'>Error Message</div>";
}
使用表单插入日期。一切都被检查得很好,当我尝试在12月30日星期五之前选择日期和时间时,我会收到一条错误消息。但是,如果我在27日星期五检查它,它会在没有任何复杂情况下通过。
我在这里有点失落,因为对我来说它似乎应该只是起作用。我已经看到有关PHP版本的一些评论,我正在运行PHP版本5.2.9。
任何想要提供帮助的人都非常欢迎。
答案 0 :(得分:2)
这是因为strtotime('Friday')
表示“本周五”。
您应该使用:
if(date('N', $timestamp) == 5)
{
// Friday!
}
else
{
// Not Friday :-(
}
我猜你的情况是用户输入的日期是$datum
。您的if
声明将变为:
if(($uur < 12) && ($min < 30) && (date('N', strtotime($datum)) == 5))
{
$proceed = FALSE;
// Etc..
}
有关date('N', $timestamp)
使用的详细信息,请参阅:http://php.net/manual/en/function.date.php
答案 1 :(得分:1)
新IDEA
$timestamp=mktime(0, 0, 0, 10, 21, 2010);
$today = getdate($timestamp);
echo $today["weekday"];
OLD IDEA 另一种方法是:
<?php
$h = mktime(0, 0, 0, 10, 31, 2008);
$d = date("F dS, Y", $h) ;
$w= date("l", $h) ;
// Echo "$d is on a $w";
if($w=="Friday"){
echo "Yes";
}
?>
整篇文章:http://php.about.com/od/finishedphp1/qt/dayoftheweek.htm
你的日期是10,31,2008。