我有一段代码涉及日期,但想改变日期的格式;它已被设置(默认为MYSQL)到YYYY/MM/DD
但是我想要它以DD/MM/YYYY
的形式。我怎么能改变这个?
答案 0 :(得分:1)
date( 'd/m/Y', strtotime( $date ) );
这应该可以工作,虽然你确定mysql不是默认为yyyy-mm-dd是常态
评论更新
$date = "2013-03-01";
date( 'd-m-Y', strtotime( $date ) );
输出:01-03-2013
评论更新2
$loan_date = date( 'd-m-Y', strtotime($_POST['loan_date']));
$return_date = date( 'd-m-Y', strtotime($_POST['return_date']));
echo $loandate;
echo $return_date;
在这种情况下的工作示例我刚用示例字符串替换了post vars,但显示它有效。如果它不工作,那么检查你的输入字符串,但它应该使用任何格式的日期戳。 http://phpfiddle.org/main/code/viu-ghp
答案 1 :(得分:0)
如果您计划因格式不同而更新列的值,请将其保留为原样DATE
。最好将日期保存为DATE
的{{1}}。
但是,您可以在投影列期间更改格式( SELECT语句)
VARCHAR
答案 2 :(得分:0)
使用DateTime类而不是PHP的旧日期处理函数:
$dateFromSQL = "2013-03-01";
$dateObj = DateTime::createFromFormat($dateFromSQL, 'Y-m-d');
print $dateObj->format('d/m/Y');