存取動態Twig 變數
Twig 提供了多種存取動態變數名稱的方法,為存取範本中的資料提供了彈性。
一種方法涉及使用物件陣列並循環遍歷它們。但是,在嘗試使用 {{ placeholder1 }} 顯示帶有發票 ID 號碼的佔位符時,您可能會遇到挑戰。
透過上下文陣列存取解決方案
而不是使用屬性函數中,您可以使用括號表示法存取_context 陣列中的值:
{{ _context['placeholder' ~ id] }}
此語法啟用簡潔明了地存取變數。
預設值處理
要處理strict_variables 設定為true 時可能不存在的變量,請考慮使用帶_context 的預設過濾器:
{{ _context['placeholder' ~ id]|default }} {{ attribute(_context, 'placeholder' ~ id)|default }}
這可以確保您不會因為缺少而遇到運行時錯誤
變數存在驗證
要驗證變數是否存在,請使用定義的測試:
{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
自訂預設值
要在變數遺失時提供自訂預設值,請新增參數預設篩選器:
{{ _context['placeholder' ~ id]|default(null) }} {{ attribute(_context, 'placeholder' ~ id)|default('Default value') }}
建議將strict_variables 設為true,以防止因拼字錯誤或缺少變數而導致的意外錯誤。
以上是如何存取動態 Twig 變數並處理缺失值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!