Twig 変数名に動的にアクセスするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-06 12:42:02
オリジナル
335 人が閲覧しました

How to Dynamically Access Twig Variable Names?

Twig 変数名に動的にアクセスする

Twig で動的な名前を持つ変数にアクセスするのは難しい場合があります。次のシナリオを考えてみましょう。

<p>placeholder1
placeholder2
placeholderx
</p>

<pre class="brush:php;toolbar:false">{% for invoices as invoice %}
    need to display here the placeholder followed by the invoice id number
    {{ placeholedr1 }}
ログイン後にコピー

コンテキスト配列を使用した変数へのアクセス

属性関数を使用する代わりに、括弧表記を使用して _context 配列内の変数値にアクセスできます。 :

{{ _context['placeholder' ~ id] }}
ログイン後にコピー

このオプションはより簡潔で、おそらくより明確です。

厳密な変数チェック

環境オプションで strict_variables が true に設定されている場合、存在しない変数に対するエラーが発生する可能性があります。これを処理するには、デフォルトのフィルターを使用します:

{{ _context['placeholder' ~ id]|default }}

{{ attribute(_context, 'placeholder' ~ id)|default }}
ログイン後にコピー

変数の存在の確認

変数にアクセスする前に変数が存在するかどうかを確認するには、定義されたテストを使用します:

{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
ログイン後にコピー

デフォルトのフィルターによるデフォルト値

変数が存在しない場合は |default:

{{ _context['placeholder' ~ id]|default(null) }}

{{ attribute(_context, 'placeholder' ~ id)|default('Default value') }}
ログイン後にコピー
を使用してデフォルト値を指定します。

以上がTwig 変数名に動的にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!