参数化树枝日期

Parametrized twig date

我需要如何检查自定义日期是否在范围内。

问题是 API return 是一个日历,但是年份和月份是分开发送的,我无法用 twig 创建日期。

这部分代码似乎 return 我的变量符合预期

<script>console.log("Year"+{{CurrYear| json_encode()| raw}});</script>
<script>console.log("Month: "+{{CurrMonth| json_encode()| raw}});</script>

虽然我可以在循环中检索日期

<script>console.log("Day: "+{{key| json_encode()| raw}});</script>

我正在尝试创建一个数据项,以便我可以使用本机比较。我知道我可以拆分另一个日期并逐个比较,但我正在努力避免这种情况

<script>console.log({{ annoForm."-".mesForm."-".key |date('Y-m-d')}}) ;</script>

所以我以后可以像

一样使用它
{% set auxDate = annoForm."-".mesForm."-".key |date('Y-m-d') %}

但是,我似乎无法在此处构建有效日期,因此我可以在以下位置使用它:

{% datestart < auxDate  and dateend > auxDate  %}
  {# condition met #}
{% endif %}

这里的主要问题是在实例化 date() 时正确连接字符串:

{% set auxDate = ("#{annoForm}-#{mesForm}-#{key} " | date('Y-m-d') ) %}

我想补充一些我在处理此问题时发现的问题。 首先是使用 date('Y-m-d') 而不是 "date()" 的重要性,因为它会在 6 月之前考虑 7 月(按字母顺序排列)。

考虑空值或开放字段(在我的例子中,日期开始是强制性的)

{% if  datestart < auxDate and ( dateend is null or dateend > auxDate ) %} 

希望对您有所帮助!