首頁 >後端開發 >php教程 >如何在 Twig 中存取動態變數名稱?

如何在 Twig 中存取動態變數名稱?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-06 05:44:031050瀏覽

How to Access Dynamic Variable Names in Twig?

在 Twig 中存取動態變數名稱

在 Twig 中處理物件陣列時,通常需要存取具有動態名稱的變數。這可以透過使用模板語法和 PHP 函數的組合來實現。

使用屬性函數

要存取名為placeholder{n} 的變量,其中n 是變數,您可以使用屬性函數:

{{ attribute(invoices, 'placeholder1') }}

這將傳回當前發票物件中的placeholder1 變數的值。

使用上下文數組

或者,您可以直接存取值使用方括號表示法來表示上下文數組:

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

這種方法通常是首選,因為它更簡潔、更清晰。但是,它需要將 strict_variables 環境選項設為 true,以避免在存取不存在的變數時出現執行階段錯誤。

提供預設值

如果strict_variables 選項設為true,則應該使用預設過濾器為不存在的變數提供預設值:

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

檢查變數是否存在

要在使用變數之前檢查變數是否存在,可以使用定義的測試:

{% if _context['placeholder' ~ id] is defined %} ... {% endif %}

這種方法比使用預設過濾器更詳細,但它提供了對異常處理更明確的控制。

以上是如何在 Twig 中存取動態變數名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn