ラテで現在の日 (date('z')) から日数 (timestamp|date'z') を減算するにはどうすればよいですか? var を使用しようとしましたが、書式設定 (z) が気に入りません。
1 に答える
1
Latte フィルターは、関数呼び出しとは異なり、式のどの部分にも適用できるものではありません。変数印刷マクロのオプション機能にすぎません。
{expression_to_be_printed|filter1|filter2|filter3}
date
ほとんどのフィルターはメソッドを呼び出すformat
だけなので、直接使用できます。
{(new DateTime())->format('z') - $timestamp->format('z')}
$timestamp
ただし、嘘が別の年にある場合、これは機能しません。これを修正するには、DateTime
のdiff
メソッドを使用できます。DateInterval
メソッドによって返される は、フォーマット文字列format
によって日数の違いを提供するメソッドを使用してフォーマットでき%a
ます。
{$timestamp->diff(new DateTime())->format('%a')}
幸いなことに、このdate
フィルタでは間隔の書式設定も可能です。
{$timestamp->diff(new DateTime())|date:'%a'}
確かに、これは見栄えが悪いです。より良い方法は、カスタム フィルターを定義して、 を使用できるようにすることです{$post->timestamp|daysAgo}
。独自のフィルターの作成については、 Latte のドキュメントを参照してください。
于 2017-01-18T16:14:04.833 に答える