モデルを渡してみる

前回のhome.blade.phpに現在時刻を渡してみましょう。

こんな感じにしてください。

そしたらhome.blade.phpを以下のようにしてください。

表示すると、

こんな感じ。

viewにモデルを渡すにはview()関数の第二引数に連想配列を渡します。

先ほどは['time' => (new DateTime())->format('H時i分s秒')]を渡しました。

このtimehome.blade.php$timeのように使えます。

連想配列のキーの名前でbladeにPHPの変数として渡されます。

 

ルートパラメーター

ルートにもパラメーターをつけることが出来ます。

たとえば/users/hota1024/ならprofile.blade.phphota1024を渡して表示する場合です。

実際に作ってみましょう。

profile.blade.phpを作成してください。内容は以下の通りです。

ルートは以下のように定義します。

そして、http://127.0.0.1:8000/users/hota1024にアクセスすると、

おお、ちゃんと表示されました。

URLのhota1024を別の文字列にしてみても同じです(例:http://127.0.0.1:8000/users/hoge)

では先ほどのルーティングを確認してみましょう。

第一引数がusers/{name}となっています。

この{ }で囲まれた部分がパラメータ名です。

そして、第二引数の関数の引数に$nameが加わっています。

先ほどの{name}がこの$nameに渡されるわけです。

この章のまとめ

ルーティングにはviewへモデルを渡すことができる。