格式化UserSpice中的时间戳

时间:2016-03-15 04:58:41

标签: php mysql timestamp

我是PhP / MySQL的新手,只是学习东西。

我正在为我的项目使用Userspice用户管理框架

在数据库中有一个名为"users"的表,它有一个字段名"join_date",字段条目看起来像2016-01-01 00:00:00,它在用户注册时被存储为时间戳。

输出我使用以下查询

<?php $user->data()->join_date; ?>

以上查询作为预期输出2016-01-01 00:00:00

但我的要求输出为January 2016。所以,我尝试了以下查询

<?php $user->data()->join_date->format('F Y'); ?>

但页面变为空白。我可以理解上面的查询有语法错误或逻辑错误。请你帮帮我。我可能看起来很傻,问这些小事,我只是在学习东西。

更新:

此外,我现在尝试以下查询,认为存储在值中并且执行将有助于但是空白页面的错误相同。

<?php 
$x = $user->data()->join_date;
$y = $x->format('F-Y');
echo $y;
?>

2 个答案:

答案 0 :(得分:1)

您需要使用strtotime函数格式化日期:(将$date替换为您的日期变量)

$date = '2016-01-01 00:00:00';

echo date('F Y', strtotime($date));

输出:

January 2016

此处DateTime类是更好的选择:

$datetime = new DateTime($date);

echo $datetime->format('F Y');

输出:

January 2016

有关详细信息,请查看http://php.net/manual/en/function.date.phphttp://php.net/manual/en/class.datetime.php

答案 1 :(得分:1)

试试这个

<?php
   $formatted_date = new DateTime($user->data()->join_date);
   echo $formatted_date->format('F Y');
?>