在Laravel Blade 模板中分配變數:一個優雅的解決方案
使用Laravel Blade 模板時,您可能會遇到需要為模板以下內容分配變數的情況:稍後在範本中使用。雖然您可以使用 {{ }} 語法來回顯值,但當您不想輸出變數時可能會很不方便。
而不是求助於語句,您有一個更優雅的選擇:
使用@php 指令
@php 指令允許您在Blade 模板中執行PHP 程式碼,而無需回顯其輸出。指令主要用於定義變數:
@php $old_section = "whatever"; @endphp
@php 的擴充版本
對於多個變數賦值,您可以使用 @php的完整形式指令:
@php $i = 1; $j = 2; @endphp
簡化版本@php
如果只需要定義單一變量,可以使用簡化版的@php指令:
@php($i = 1)
進階:自訂@define Tag
如果您更喜歡自訂語法,您可以擴展Blade 以使用@define tag:
\Blade::extend(function($value) { return preg_replace('/\@define(.+)/', '<?php ; ?>', $value); });
這個擴展之後,你可以簡單地使用@define 來賦值變數:
@define $i = 1
這個方法允許你使用與你的Laravel 編碼更一致的語法做法。無論您選擇預設的 @php 指令還是自訂的 @define 標記,您現在都可以輕鬆地在 Blade 模板中分配變量,而不會弄亂您的輸出。
以上是如何在 Laravel Blade 模板中指派變數:@php 或自訂 @define?的詳細內容。更多資訊請關注PHP中文網其他相關文章!