我想将日期格式从特定格式转换为其他格式。
例如,
将日期从(2011-06-21或2011/06/21或06/21/2011)转换为21062011。
是否有任何功能可以完成这项工作。
提前致谢。
答案 0 :(得分:2)
var_dump(
date('dmY', strtotime('2011-06-21')),
date('dmY', strtotime('2011/06/21')),
date('dmY', strtotime('06/21/2011'))
);
答案 1 :(得分:1)
您应该使用DateTime
类。
$date = new DateTime('2011-06-21');
echo $date->format('dmY');
如果您愿意,可以在程序上使用它。
var_dump(
date_format(date_create('2011-06-21'), 'dmY'),
date_format(date_create('2011/06/21'), 'dmY'),
date_format(date_create('06/21/2011'), 'dmY')
);
答案 2 :(得分:0)
嗨,你应该可以像这样使用日期和strtotime
$date; //the date that needs to be formatted
<?php date('dmY', strtotime($date)); ?>
因此,在date()函数中,您只需格式化日期,但希望原始日期为
希望有所帮助
答案 3 :(得分:0)
不幸的是,日期特定于区域设置。 strtotime()没有观察到语言环境的所有细节(而date_parse是一个简单的strtotime包装器)。例如今天是2011年6月21日在英国,2011年6月21日在美国。
更强大的解决方案是使用DateTime类及其createFromFormat方法。
但是,IME,除非您从一致的机器生成源获取输入数据,否则更好的解决方案是使用便于input in a consistent format
的工具