今回の記事
Laravelプロジェクトを作成し、新規ページの作成を行います。
プロジェクト作成手順はこちらを参考にしてください。

今回記事はLaravel8で作業を行っています。
ページの表示の仕組みを確認
初期ページの表示
まずはプロジェクト作成直後のスタートページ(welcomeページ)がどのようにして表示されているかを確認します。
Webシステムではクライアント(使用者)の要求(リクエスト)にサーバが応答(レスポンス)することによってページの表示やファイルダウンロードなどが行われます。
まず、「php artisan serve」コマンドを実行してシステムを起動し、ブラウザで表示されたURLにアクセスしましょう。(わからない方は、前回記事の最後の手順を確認してください。)
今回のURL「http://127.0.0.1:8000/」は、「127.0.0.1」というサーバに対してリクエストを送信しています。
「http」はプロトコル(通信規則)を表しています。WebサーバとWebブラウザがWeb情報を通信するためには、「http」「https」が使用されます。
「:8000」はポート番号を表しています。ポート番号はサーバの通信の受け口の番号で、サーバが応答する機能を判別するために使用します。
通常は「http=80」「https=443」となっており、ブラウザからアクセスする際は入力不要です。(よく使うWebサイトのアドレスを見ていただくと、ポート番号の指定までは行っていないことが確認できると思います。)
今回は開発のために「Laravelのサーバ機能」にリクエストするために、「:8000」でポート番号を指定しています。
表示されるページはどう決まるのか?
ページ表示の仕組みを理解する上で大切になるのは「ルーティング」という動きになります。
URLに対して、どのような処理をするかの道を決める処理ですね。「道=ルート」から「ルーティング」と覚えましょう。
そのルーティングですが、Laravelではルーティング設定用のファイルを作成して管理していきます。
プロジェクトの「routes」というディレクトリをのぞいてみましょう。
その中の「web.php」が画面遷移のルーティングを管理しています。
こちらがURLから処理を決定している処理になります。
Routeクラスのgetメソッドを使用していますね。
第一引数「’/’」がURLを、第二引数「function ~」がURLに対する処理を示しています。
今回はURL 「’/’」 に対してはviewメソッドの結果を返すようになっていますね。
このRouteについては設定方法等がたくさんあるので公式ドキュメントを参照してください。
全てを覚える必要はないですが、便利な指定がたくさんあるので上手に使えば開発を効率よく進められます。
Viewとは何か?
先ほどさらっとでてきたViewとは何なのでしょうか?
実はこれが「画面」となるものになります。
Laravelでは「resources/views」に配置される「blade」ファイルで画面を作成していきます。
ディレクトリをのぞいてみましょう。
この中に「welcome.blade.php」というファイルがあるかと思います。
この「welcome.blade.php」が今回のviewメソッドで呼ばれるファイルになります。
つまり、viewメソッドは第一引数でviewsディレクトリ内のファイルを指定しているわけですね。
先ほどのルーティングファイル内では
view('welcome')
と指定していましたね。
つまり、「resources/views/welcome.blade.php」を読み込んで返してねという処理だったわけです。
Viewファイルを確認する
それでは続いてViewファイルを確認してみましょう。
「resources/views/welcome.blade.php」を開いてみましょう。
中身はHTMLに近いものだとすぐに気づくかと思います。
Webページを構成するファイルなので、基本的にはHTMLになります。
とは言っても
@if (Route::has('login'))
<a href="{{ url('/home') }}"
のように、HTMLではありえない記述もありますね。
bladeはテンプレートエンジンと呼ばれるもので、ひな形(テンプレート)とデータを結びつける役割を担っています。
つまり、ページ構成(ひな形)をHTMLで作りながらサーバサイドでの処理で作成されるデータなどを動的にWebページに埋め込み、HTMLを作成できるわけですね。
条件によってコンテンツの表示・非表示を切り替えたりということや、サーバ側で取得したデータの埋め込みなどができるわけです。
サーバサイド処理の結果を反映させることができるので、DBとの連携など様々なことを行うことができます。
Viewについても、Laravel公式ドキュメントで勉強しておきましょう!
Laravelは公式ドキュメントがとても丁寧なので勉強がしやすいと思います
画面作成
それでは、続いて画面を作成していきましょう。
特別なことは必要なく、「resources/views」に「ファイル名.blade.php」のbladeファイルを作成するだけとなります。
今回は「test.blade.php」を作成します。
この後画面表示をして確認するので、適当にHTMLを書いておきましょう。
画面の表示
画面の表示にはルーティングの設定が必要となります。
今回はURL「test」で画面が表示されるようにします。
「routes/web.php」にルーティング設定を追記します。
Route::get('test', function () {
return view('test');
});
ここまで記述したら「http://127.0.0.1:8000/test」にアクセス。
画面が表示されるかと思います。
今回はここまで!
画面はたくさん作成することになるので、Viewの仕組みや表示の仕組みはしっかりと理解しておきましょう。
次回は処理を間に挟み、その処理結果を使用したViewの作成などを行っていきます。