14

Twig テンプレートに表示したい変数の配列があり、各変数は文字列または日付のいずれかです。

変数が日付の場合、次のdateようにフィルターを適用します。

{{ my_var|date('d/m/Y') }}

そして、それが文字列の場合は、通常の方法で表示したい:

{{ my_var }}

変数が日付 (つまり、PHP DateTime オブジェクトのインスタンス) であるかどうかをテストする方法はありますか?

4

3 に答える 3

36

最善の方法ではないかもしれませんが、問題の解決策を見つけました。

{% if my_var.timestamp is defined %}
    {{ my_var|date('m/d/Y') }}
{% else %}
    {{ my_var }}
{% endif %}

DateTimePHP オブジェクトには publicメソッドがあるためgetTimestamp、このプロパティが設定されているかどうかにかかわらず、変数が日付かどうかを確認する方法です。

于 2013-01-23T14:42:45.327 に答える