我的表单中有以下日期选择器:
$( '.datepicker' ).datepicker({ dateFormat: 'dd-mm-yy' });
然后在我的PHP代码中处理我拥有的表单:
$campaignDate = DateTime::createFromFormat('d-m-y', $formdata['Campaign']['campaign_date']
);
if ($campaignDate) {
$campaignUnixDate = $campaignDate->getTimestamp();
} else {
$response = array(
'status' => 'FAILED',
'message' => 'Failed to create Campaign Date',
'redirect' => ''
);
echo json_encode($response);
return;
}
$ campaignDate似乎总是假的,我假设我的createfrom有错误的格式,但我无法解决这个问题。
答案 0 :(得分:0)
使用大写Y
代替小写y
$campaignDate = DateTime::createFromFormat(
'd-m-Y',
$formdata['Campaign']['campaign_date']
);
日期格式不匹配
$( '.datepicker' ).datepicker({ dateFormat: 'dd-mm-yy' });
将返回
18-07-2015
,而
$campaignDate = DateTime::createFromFormat(
'd-m-y',
$formdata['Campaign']['campaign_date']
);
使用格式
18-07-15
来自PHP文档:
<强>ý强>
一年的完整数字表示,4位数 例子:1999年或2003年<强>ý强>
一年的两位数表示(假设在1970-2069范围内,包括在内) 示例:99或03(分别将解释为1999年和2003年)