使用php date()将奇怪的时间戳转换为Woocommerce

时间:2018-06-19 11:42:25

标签: php wordpress datetime woocommerce timestamp

有问题的时间戳记2018-02-08T09:51:54+00:00

我正在使用SendinBlue woocommerce插件发送我的商店电子邮件并处理模板,但是在插入订单日期时,插件通过$order->get_date_created()来获取

问题是使用日期时出现调试错误

date() expects parameter 2 to be integer

假设这是由于T+:造成的?

我仍然不确定是否存在格式设置日期时我错过的woocommerce技巧,或者这是否是SendinBlue插件正在执行的操作?

任何帮助表示赞赏。

谢谢

1 个答案:

答案 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