Symfony3表单的Unix时间戳输入

时间:2017-04-17 17:39:57

标签: symfony datetime

我在Symfony3中有一个实体,它有一个名为“checkin_at”的DateTime属性。

我想创建一个表单,其中checkin_at的输入是一个unix时间戳,它存储该时间戳的相应DateTime。

E.g。我会输入1498867201,它会存储2017-07-01 00:00:01我的实体。

我看不到如何让DateTimeType字段接受UNIX时间戳作为有效条目,或者我无法弄清楚如何让表单自动将NumberType转换为实体的DateTime。

请告知:)

1 个答案:

答案 0 :(得分:1)

如何为checkin_at变量创建一个setter?

在您的实体中添加:

public function setCheckinAt(string $checkinAt){
 $this->checkinAt=date("Y-m-d H:m:s", $checkinAt);
}

如果您愿意,可以使用Regex或use Symfony\Component\Validator\Constraints as Assert;进行更多验证来优化您的setter