てりーのtechブログ

エンジニア向けにITや技術系の発信と哲学を書いてます

【Laravel初心者】ルーティングとコントローラーの基礎知識


title: 【Laravel初心者】ルーティングとコントローラーの基礎知識 tags: PHP7 Laravel author: terry_6518

slide: false

はじめに

こんにちは。てりーと申します! プログラミング歴が4ヶ月目に入ろうとしているエンジニアです。

今月からLaravelを触り始めたので、備忘録がてら記事の投稿をします。 ルーティングとコントローラについての基礎知識をさらっとまとめました。

何かご指摘やアドバイス、感想を言って頂けると幸いです。

参考文献

「PHPプレームワーク Laravel入門」  2章 ルーティングとコントローラ

ルーティング

ルーティングに関する情報は「routes」にまとまっています。

■ 一般的なwebサイト webサーバーの公開フォルダにファイルを用意しておいて、そこにアクセスしたら表示される。

■ Laravel アドレスに割り付けられたプログラムが実行される。その際の関連付けを行うのがルーティングです。 例:「○○にアクセスすると,××という処理を施される」

web.php

このファイルが一般的なwebサイトにアクセスする際に使うルーティングです。

<?php
Route::get('/', function () {
   return view('welcome');
});

'/'の部分は第1引数に割り当てられるアドレスを指します。 function () {......}の部分はそれによって呼び起こされる処理が入ります。

function () { return view('welcome'); }); では、「resouces/view」フォルダにある「welcome.blader.php」をレンダリングして表示しています。

コントローラー

具体的な処理を実装するために用意されているのがコントローラです。 LaravelはMVCと呼ばれるアーキティクチャーで、それぞれが

M:model データ処理を担当 V:view 画面処理担当。表示用のテンプレートなど C:controller 全体の制御担当。

となっています。

aritsanコマンドでコントローラー作成

php artisan make:controller コントローラー名

「app/Http/controller」フォルダ内に作成される。

アクション追加

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HelloController extends Controller
{
  アクション
  }

class HelloController extends Controller controllerのクラスを継承

{ アクション} アクションメソットはここに入れる。

Route::get('hello','HelloController@index')

ルート情報の設定。 Route::get('hello','コントローラー名@アクション名')

まとめ

久々の投稿は自分の備忘録として使わせていただきました。 Laravelに慣れていないので、概念的な所を掴むのに苦労しています。

次はビューの部分をかじりつつ、実際にbladeテンプレートを作成してみたいと思います。

最後までご拝読ありがとうございました。