date_parse()在PHP 5.4中导致非法字符串偏移
我一直在研究这个问题,但不明白为什么我会收到这个错误。警告引用了以下行:date_parse()在PHP 5.4中导致非法字符串偏移,php,Php,我一直在研究这个问题,但不明白为什么我会收到这个错误。警告引用了以下行:if($i==$break\u date['month']),并且仅在升级到PHP5.4后才会持续 下面是一个非常有用的函数,用于动态生成日期选择器。如有任何见解,将不胜感激 function date_picker($name, $date, $startyear='2005', $endyear='2020') { $break_date = date_parse($date); if($startyear==
if($i==$break\u date['month'])
,并且仅在升级到PHP5.4后才会持续
下面是一个非常有用的函数,用于动态生成日期选择器。如有任何见解,将不胜感激
function date_picker($name, $date, $startyear='2005', $endyear='2020') {
$break_date = date_parse($date);
if($startyear==NULL) $startyear = date("Y")-100;
if($endyear==NULL) $endyear=date("Y")+50;
$months=array('','01 January','02 February','03 March','04 April','05 May',
'06 June','07 July','08 August', '09 September','10 October','11 November','12 December');
// Month dropdown
$html="<select name=\"".$name."_month\" style='width: 22%;'>";
$html.="<option value=''>Month</option>";
for($i=1;$i<=12;$i++)
{
if ($i==$break_date['month'])
{
$month_selected = "selected";
} else {
$month_selected = "";
}
$html.="<option value='$i' $month_selected>$months[$i]</option>";
}
$html.="</select> ";
// Day dropdown
$html.="<select name=\"".$name."_day\" style='width: 22%;'>";
$html.="<option value=''>Day</option>";
for($i=1;$i<=31;$i++)
{
if ($i==$break_date['day'])
{
$day_selected = "selected";
} else {
$day_selected = "";
}
$html.="<option value='$i' $day_selected>$i</option>";
}
$html.="</select> ";
// Year dropdown
$html.="<select name=\"".$name."_year\" style='width: 22%;'>";
$html.="<option value=''>Year</option>";
for($i=$startyear;$i<=$endyear;$i++)
{
if ($i==$break_date['year'])
{
$year_selected = "selected";
} else {
$year_selected = "";
}
$html.="<option value='$i' $year_selected>$i</option>";
}
$html.="</select> ";
return $html;
}
函数日期\u选择器($name,$date,$startyear='2005',$endyear='2020'){
$break\u date=date\u parse($date);
如果($startyear==NULL)$startyear=date(“Y”)-100;
如果($endyear==NULL)$endyear=日期(“Y”)+50;
$months=数组(“”,'01一月','02二月','03三月','04四月','05五月',
‘6月6日’、‘7月7日’、‘8月8日’、‘9月9日’、‘10月10日’、‘11月11日’、‘12月12日’;
//月份下拉列表
$html=“”;
$html.=“月”;
对于($i=1;$i您做了什么尝试来修复它?似乎date\u parse
没有返回带有month
键的数组。这可能意味着$date
为空或不可解析。可能自升级以来您还没有在php.ini
中设置默认时区。您查看过它的返回值吗?谢谢,Dan i将检查php ini