有问题的时间戳记2018-02-08T09:51:54+00:00
我正在使用SendinBlue woocommerce插件发送我的商店电子邮件并处理模板,但是在插入订单日期时,插件通过$order->get_date_created()
来获取
问题是使用日期时出现调试错误
date() expects parameter 2 to be integer
假设这是由于T
,+
和:
造成的?
我仍然不确定是否存在格式设置日期时我错过的woocommerce技巧,或者这是否是SendinBlue插件正在执行的操作?
任何帮助表示赞赏。
谢谢
答案 0 :(得分:2)
两种类似的方式:
1)使用Woocommerce:
WC_Order
get_date_created()
方法返回一个WC_Datetime
对象。您可以使用WC_Datetime
date()
method重新设置其格式,例如:
// Using '2018-02-08T09:51:54+00:00' timestamp
echo $order->get_date_created()->date('Y-m-d H:i:s');
,并显示:2018-02-08 09:51:54
。
2)使用PHP:
或者您可以使用可用的strtotime()
在PHP date()
函数中使用PHP date()
formatting arguments函数重新格式化任何“怪异”时间戳。例如:
$timestamp = $order->get_date_created(); // Using '2018-02-08T09:51:54+00:00' timestamp
echo date('Y-m-d H:i:s', strtotime($timestamp));
还将显示:2018-02-08 09:51:54
。