daun/datetime-carbon-format

将日期时间字段格式化为Carbon实例

v1.1.4 2021-01-24 22:08 UTC

This package is auto-updated.

Last update: 2024-09-20 00:00:59 UTC


README

GitHub tag (latest by date) GitHub License

将日期时间字段格式化为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);

贡献

欢迎提交拉取请求。请阅读贡献指南

许可证

MIT