今天我想使用 jQuery/Javascript 将日期转换成不同的格式:
$date = '2013-04-01T19:45:11.000Z'
$cool = date('Y-m-d',strtotime($date));
我怎样才能在 jQuery/Javascript 中做到这一点(PHP)?
谢谢!
今天我想使用 jQuery/Javascript 将日期转换成不同的格式:
$date = '2013-04-01T19:45:11.000Z'
$cool = date('Y-m-d',strtotime($date));
我怎样才能在 jQuery/Javascript 中做到这一点(PHP)?
谢谢!
<script>
var date = new Date('2013-04-01T19:45:11.000Z');
var day = date.getDate();
var month = date.getMonth();
var year = date.getFullYear();
document.write(year + '-' + month + '-' + day);
</script>
对于 javascript,您需要这种格式的日期Sun, 01 Sep 13 08:06:57 +0000
所以在 PHP 中,您需要做这样的事情
date_default_timezone_set('Australia/Perth');
echo date('D, d M y H:i:s')." +0000";
你可以尝试用 jQuery 来检查它
$.get('dateformat.php', function(data) {
date = new Date(data);
console.log(date);
});
然后您可以根据需要格式化日期
自行格式化日期对象的示例:
$.date = function(dateObj) {
var d = new Date(dateObj);
var day = d.getDate();
var month = d.getMonth() + 1;
var year = d.getFullYear();
if (month < 10) {
month = "0" + month;
}
return year + "." + month + "." + day;
};
一个jquery插件,帮助你格式化一个类似于php的日期
https://github.com/phstc/jquery-dateFormat
您可以使用它来应用这样的格式
$.format.date("2009-12-18 10:54:50.546", "Test: dd/MM/yyyy")
我想就是这样。
如果您的目标是更新的浏览器,那么您可以直接在 JavaScript 中解析它,如 fujy 或 LeGrande 所示。但是当您这样做时,请了解您传递的 UTC 日期将转换为浏览器的本地时区。
如果你想要更多的灵活性和完全的浏览器兼容性,那么你应该使用像moment.js这样的库。
// Parse it to a moment
var m = moment("2013-04-01T19:45:11.000Z");
// Format it in local time in whatever format you want
var s = m.format("YYYY-MM-DD HH:mm:ss")
// Or treat it as UTC and then format it
var s = m.utc().format("YYYY-MM-DD HH:mm:ss")
JavaScript 足够聪明,可以接受不同格式的日期
var d1 = new Date('2013-04-01T19:45:11.000Z');