如何動態存取 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!