Twigのfunctionであるattributeの使い方の紹介です。
配列の中身を表示したり、メソッドを呼び出したりできます。
公式:https://twig.symfony.com/doc/3.x/functions/attribute.html
attributeを使ったメソッドの呼び出し
基本的な使い方は下記になります。
{{ attribute(object, method) }}
{{ attribute(object, method, arguments) }}
attributeの使い方:サンプル
// make sample function
{% macro foo(name, age) %}
NAME:{{ name }}
AGE:{{ age }}
{% endmacro %}
// attribute
{{ attribute(_self, 'foo', ['Mishima', 33]) }}
// result
NAME:Mishima AGE:33
余談ですが、今回はfunctionをmacroで作っているので下記でも呼び出せます。
{{ _self.foo('Mishima', 33) }}
上記はmacroの使い方の一例です。
attributeで配列の中身を表示する
配列のkeyが特殊な場合、attributeを使用して取得する方法があります。
(たとえば、「-」などはマイナス演算子として扱われてしまいます。)
{{ attribute(foo, 'data-foo') }}
// cant use
{{ foo.data-foo }}
Twigおすすめの書籍
Twigだけに特化した書籍は読んだことがないのですが、AmazonのKindleにありました。
これと同じくらいブログでまとめられたらと思います。
[…] [Twig]配列の表示&メソッドの呼び出しの方法(attribute) 投稿日 2021年2月4日 20:56:17 (グルメ) […]
[…] [TWIG]配列の表示&メソッドの呼び出しの方法(ATTRIBUTE) […]