Php 如何使用时间表?

Php 如何使用时间表?,php,Php,我在做一个测试,看到了这个功能: Class Object{ use Timestampable; } $object= new Object(); $object->setCreatedAt(new DateTime()); 我相信这是一个很难回答的问题,因为我在列表中找不到“timestable” 我在网上看到了对它的引用,这让我困惑于它是否真的可以被使用。我知道MySQL数据库中有时间戳,但这在PHP中实际存在还是有用途 问题不在于是否可以设置时间戳,而在于测试您对抽象类、

我在做一个测试,看到了这个功能:

Class Object{
    use Timestampable;
}
$object= new Object();
$object->setCreatedAt(new DateTime());
我相信这是一个很难回答的问题,因为我在列表中找不到“timestable”


我在网上看到了对它的引用,这让我困惑于它是否真的可以被使用。我知道MySQL数据库中有时间戳,但这在PHP中实际存在还是有用途

问题不在于是否可以设置时间戳,而在于测试您对抽象类、接口和特性的了解。

时间戳是一种所谓的,旨在帮助重用代码

假设您有一组实体,它们都有一些共同的功能,例如,它们都需要
$createdAt
$updatedAt
字段。您可以通过为所有实体创建一个公共基类来实现这一功能,但从体系结构的角度来看,这并不是一件好事

相反,你可以创造一种特质:

特征时间表
{
受保护的日期时间$createdAt;
受保护的DateTime$updatedAt;
...
}
然后像这样使用它:

类用户
{
使用时间标签;
}
现在
User
对象将具有
$createdAt
字段以及trait中定义的任何其他字段或方法,就像它们将在
User
类中定义一样。这样,您就不需要在所有类中重复相同的代码

时间标记是更常见的特征之一,但显然特征并不限于此


我知道这是一个4年前的问题,但这是谷歌的最高结果,所以我认为这可能对其他人有帮助。

这是一个图书馆的一部分,它被称为Gedmo,这也是一个理论的延伸。它不在标准PHP中,因此也没有文档记录。更具体地说,它是某些第三方库的一部分。如果您想处理日期和时间戳之类的内容,请使用
DateTime
类。它支持几乎任何你喜欢的东西。这确实帮助我找到了文档。:)我添加了一个链接以获取更多信息,以防其他人有此问题。