初期状況
コントローラーで現在の平日を取得します
$dayname = date('l');
翻訳用に、平日専用の翻訳ファイルを1つ持っています(weekdays.de.yml
)
Monday: Montag
Tuesday: Dienstag
# ...
ここで、PHP 変数を twig ファイルに渡し、フィルター$dayname
を使用してそこで呼び出すことができるようにします。trans
{% trans_default_domain 'weekdays' %}
{{ dayname|trans }}
簡単に、うまくいきます。
客観的な目標
フォルダーを整理しておくために、translations
それらを 1 つの大きな単一の翻訳ファイルに移行したいと考えてweekdays.de.yml
います。ここでは、曜日だけでなく、すべての翻訳要素 ( 、 、 など) を整理trans.en.yml
しtrans.de.yml
ますtrans.fr.yml
。
# trans.en.yml
# ...
weekdays:
monday: Monday
tuesday: Tuesday
# ...
# trans.de.yml
# ...
weekdays:
monday: Montag
tuesday: Dienstag
# ...
たとえば、月曜日の場合、次のように小枝ファイルで適切な曜日を呼び出すことができます。
{% trans_default_domain 'trans' %}
{{ weekdays.monday|trans }}
しかし、$dayname
変数を twig ファイルに渡し、対応する翻訳ファイルから曜日を選択するにはどうすればよいでしょうか?