ルーティング(テンプレートに値を渡す)
テンプレートに値を渡して表示するルーティング
ルーティングとコントローラー(3/5):初心者のためのLaravel入門 - libro の通りに進めれば、http://localhost:8000/heloにアクセスすると「Sample」と書かれたページ(テンプレートに値を渡したもの)が表示されます。
では、実際に簡単なテンプレートを作ってみましょう。「views」フォルダ内に、「helo.php」というファイル名でPHPファイルを作成して下さい。ここに、下のリスト欄のようにソースコードを記述しておきましょう。
※Laravelにデフォルトで用意されているBladeというテンプレートエンジンを利用するには、「.blade.php」という拡張子(ここでは「helo.blade.php」というファイル名)でPHPファイルを作成する必要があります。
今日のソース
▼ /resources/views/helo.blade.php
<!doctype html> <html> <head> <title>Sample</title> <style> body { color:gray; } h1 { font-size:18pt; font-weight:bold; } </style> </head> <body> <h1>Sample</h1> <p>{{$message}}</p> </body>
※{{$message}}はBladeの記述法で、PHPへコンパイルすると
<?php echo $message; ?>
になります。
▼ /routes/web.php
Route::get('/helo', function () {
return view('helo',['message' => 'Hello!']);
});
※http://localhost:8000/heloというURIにアクセスすると「helo」というテンプレート(/resources/views/helo.blade.php)を使用し、「$message」という変数に「Hello!」という文字列を渡して表示するというルーティングです。
今日の開発環境
PHP 7.2.3, Composer 1.6.3, Laravel 5.6