我有一个使用日期变量从MySQL数据库返回结果的PHP报告。
我没有编写该报告,它使用了mktime
,最近我迁移到了新服务器,并安装了最新版本的php,现在出现以下错误:
这是创建日期变量的代码:
$start_date = mktime(0,0,0,$StartMonth,$StartDay,$StartYear);
$end_date = mktime(23,59,59,$EndMonth,$EndDay,$EndYear);
然后获取日期:
if ($HTTP_SERVER_VARS['REQUEST_METHOD'] == "POST") {
if ($prefix == "Start") {
$currYear = $StartYear;
$currMonth = $StartMonth;
$currDay = $StartDay;
}
elseif ($prefix == "End") {
$currYear = $EndYear;
$currMonth = $EndMonth;
$currDay = $EndDay;
}
}
else {
$arr = getdate(mktime());
$currYear = $arr["year"];
$currMonth = $arr["mon"];
// If the user hasn't chosen a date,
// set the beginning day at the first of the month
if ($prefix == "Start")
$currDay = 01;
else
$currDay = $arr["mday"];
}
当我现在运行报告时,我会得到“Strict Standards: mktime(): You should be using the time() function instead”错误。我已将其更改为“$arr = getdate(time());”,这样可以消除错误,但现在日期选择器无法使用。
print_r(getdate(mktime()))
和print_r(getdate(time()))
来检查是否存在可能会影响日期选择器的差异。 - Mariano D'Ascanio$start_date
和$end_date
是如何使用的。你的问题只在于$arr = getdate(mktime());
这一行代码(和后续的日期选择器)吗?你能将你的代码简化成只有这部分吗? - Teepeemm