daun / datetime-carbon-format
将日期时间字段格式化为Carbon实例
v1.1.4
2021-01-24 22:08 UTC
Requires
- php: >=7.0
- composer/installers: ~1.0
- nesbot/carbon: ^2.0
README
将日期时间字段格式化为Carbon实例。
安装
使用Composer安装模块。这将作为子依赖项安装Carbon。
composer require daun/datetime-carbon-format
ℹ️ 通过模块目录安装仅适用于您已经从项目根目录要求了
nesbot/carbon
的情况。
使用
所有日期时间字段现在将格式化为Carbon实例而不是字符串。以下是一些如何使用的示例
// $page->date is a Datetime field // Output format: j/n/Y echo $page->date; // 20/10/2020 echo $page->date->add('7 days'); // 27/10/2020 echo $page->date->format('l, F j'); // Monday, October 20 echo $page->date->year; // 2020 echo $page->date->diffForHumans(); // 28 minutes ago
有关详细信息,请参阅Carbon文档。
注意
仅前端
ProcessWire管理员期望日期时间字段为字符串。这就是为什么此模块在正常前端页面视图中只会返回Carbon实例。
日期输出格式
当将Carbon实例转换为字符串(通常在模板中输出字段时)时,将尊重字段的日期输出格式。
空值
空日期字段将包裹在一个代理对象中,该对象静默地“吞噬”对属性和方法的无异常访问。这是因为Carbon实例不能为空,即不能在没有有效的时戳值的情况下创建。
使用timestamp
属性或isset
访问器来检查日期是否有值。
// Date field with data $page->date->timestamp; // 1578870000 $page->date->isset; // true $page->date->year; // 2020 $page->date->format('j'); // 20 // Empty date field $page->date->timestamp; // null $page->date->isset; // null $page->date->year; // null $page->date->format('j'); // null
carbon
API变量
模块将创建一个预配置的Carbon工厂并将其连接到一个新的carbon
API变量。此工厂对象可用于创建新的Carbon实例、编辑其上的设置等。
// Create a new Carbon instance $datetime = wire()->carbon->createFromTimestamp($timestamp);
贡献
欢迎提交拉取请求。请阅读贡献指南。