还剩几天、几小时、几分钟和几秒



我正在使用Drupal 8,并试图获取启动一个事件的剩余时间。我有未来的约会。

当我做{{content.field_event_start_date_time }}时,它输出:

Thu, 05/20/2021 - 12:00 which is my start date of the event

现在,我使用以下代码来计算不起作用的天数差异:

{# endDate and startDate are strings or DateTime objects #}
{% set difference = date({{content.field_event_start_date_time  }}).diff(date(startDate)) %}
{% set leftDays = difference.days %}
{% if leftDays == 1 %}
1 day
{% else %}
{{ leftDays }} days
{% endif %}

你知道我还能剩下几天、几小时、几分钟和几秒钟吗?

不要在视图层中包含太多逻辑。这会降低代码的可读性。视图应该主要接收在Drupal的钩子系统中计算的变量。

我建议使用hook_preprocess_HOOK(),并在那里计算日期。

例如,在您的主题文件中:

function hook_preprocess_YOUR_VIEW_NAME(&$variables) {
$variables['my_date'] = // ... calculate your date
}

相关内容

  • 没有找到相关文章

最新更新