Laravel Blade テンプレートでの変数の割り当て: エレガントなソリューション
Laravel Blade テンプレートを使用する場合、変数を割り当てる必要がある場合があります。後でテンプレート内で使用します。値をエコーするために {{ }} 構文を使用できますが、変数を出力したくない場合には不便な場合があります。
を使用する代わりに、
@php ディレクティブの使用
@php ディレクティブを使用すると、出力をエコーせずに Blade テンプレート内で PHP コードを実行できます。 。このディレクティブは主に変数の定義に使用されます。
@php $old_section = "whatever"; @endphp
@php の拡張バージョン
複数の変数の割り当ての場合は、@php の完全な形式を使用できます。ディレクティブ:
@php $i = 1; $j = 2; @endphp
@php の簡易バージョン
変数を 1 つだけ定義する必要がある場合は、@php ディレクティブの簡易バージョンを使用できます。
@php($i = 1)
詳細: カスタム @define タグ
カスタム構文を使用したい場合は、@define タグを使用するように Blade を拡張できます:
\Blade::extend(function($value) { return preg_replace('/\@define(.+)/', '<?php ; ?>', $value); });
この拡張機能の後は、@define を使用して変数を割り当てるだけです:
@define $i = 1
この方法により、Laravel のコーディング慣行とより一貫した構文を使用できるようになります。デフォルトの @php ディレクティブを選択するか、カスタムの @define タグを選択するかに関係なく、出力を煩雑にすることなく Blade テンプレートに変数を割り当てる便利な方法が提供されるようになりました。
以上がLaravel Blade テンプレートで変数を割り当てる方法: @php またはカスタム @define?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。