【发布时间】:2014-04-06 03:13:46
【问题描述】:
我正在根据日期确定星期几。我添加了一个数组来打印实际月份而不是月份的数字。它适用于正确的日期。但是当我查找无效日期时,checkdate 函数可以工作,但是在显示无效日期时它会将月份上移一个。我知道它与monthName 有关,因为当我将其保留为月份编号($month)时,它可以正常工作。任何想法为什么?
<?Php
error_reporting(E_ALL ^ E_NOTICE);
$todo=$_POST['todo'];
if(isset($todo) and $todo=="submit")
{
$month=$_POST['month'];
$dt=$_POST['dt'];
$year=$_POST['year'];
$timestamp = mktime(0, 0, 0, "$month", "$dt", "$year");
$monthName = date("F", $timestamp);
if (checkdate($month, $dt, $year))
{
"<br>";
echo "$monthName $dt, $year was (or will be) on a " . \date("l", mktime(0, 0, 0, "$month", "$dt", "$year")) . "<br>";
}
else
{
echo $error = "The date $monthName $dt, $year is invalid";
}
}
?>
<h2>Enter a Date and I'll Tell You the Day of the Week</h2>
<form method=post name=f1 action=''><input type=hidden name='todo' value="submit">
<table border="0" cellspacing="0" >
<tr><td align=left>
Month <select name=month value=''>Select Month</option>
<option value='01'>January</option>
<option value='02'>February</option>
<option value='03'>March</option>
<option value='04'>April</option>
<option value='05'>May</option>...
【问题讨论】:
标签: php validation date if-statement