データの表示
- 【コントローラ側】 変数をビューに渡す
- 【ビュー側】 コントローラから受け取った変数を
{{
と}}
で囲む
変数をビューに渡すには、上記のようにview()ヘルパ関数の第2引数にPHPのcompact()関数を指定する方法が一般的compact()
関数の引数にはビューに渡す変数名を文字列で指定、先頭の$
(ドル記号)は不要
コントローラ側
class HelloController extends Controller { public function index() { $name = 'へのへのもへじ'; // 変数$nameをindex.blade.phpファイルに渡す return view('index', compact('name')); } }
ビュー側
<!--======== 前略 ========--> <body> <p>こんにちは、{{ $name }}さん!</p> </body> </html>
ブラウザ
こんにちはへのへのもへじさん
ディレクティブ
代表的なディレクティブ
Laravelの代表的なディレクティブ | 処理の内容 |
---|---|
@if () ~ @elseif () ~ @else ~ @endif | PHPのif文 |
@for () ~ @endfor | PHPのfor文 |
@while () ~ @endwhile | PHPのwhile文 |
@foreach () ~ @endforeach | PHPのforeach文 |
@csrf CSRFからの保護 |
@foreach
の例
--Controller.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class HelloController extends Controller { public function index() { $name = 'へのへのもへじ'; $languages = ['HTML', 'CSS', 'JavaScript', 'PHP']; // 変数$name、$languagesをindex.blade.phpファイルに渡す return view('index', compact('name', 'languages')); } }
index.blade.php
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>BladeTemplate</title> </head> <body> <p>こんにちは、{{ $name }}さん!</p> <ul> @foreach($languages as $language) <li>{{ $language }}</li> @endforeach </ul> </body> </html>
こんにちはへのへのもへじさん
- HTML
- CSS -JavaScript
- PHP