我必须将日期格式转换为mm-dd-yyyy
我不知道它是动态的当前日期格式,所以如果我的动态日期格式已经在mm-dd-yyyy
,那么{{1}函数返回下面outout
date()
输出
$date='02-13-2011';
echo date('m-d-Y',strtotime($date));
所以我必须检查日期是否已经在 01-01-1970
?>
,然后不应用日期格式。
还有其他办法吗?可能会在这些函数中传递另一个参数或类似的东西。
感谢。
答案 0 :(得分:7)
我强烈怀疑这是造成问题的原因:
通过查看各个组件之间的分隔符来消除m / d / y或d-m-y格式的日期:如果分隔符是斜杠(/),则假设为美国m / d / y;而如果分隔符是破折号( - )或点(。),则假定为欧洲d-m-y格式。
你有破折号分隔符,因此它采用d-m-y格式,将其解析为13个月,从而有效地失败。
我可以想到的选项,而不是PHP开发人员:
答案 1 :(得分:4)
替换 - 用/为m-d-Y会有所帮助。
echo date('m-d-Y',strtotime(str_replace('-', '/', $date)));