人気No.1のPHPフレームワークLaravel5に入門してみる

デフォルトでユーザ認証までついてるLaravel5。
世界で人気No.1のPHPフレームワークにとりあえず入門です!

プロジェクト作成

【インストール】

【アプリケーション設定】

config/app.php

【エラーメッセージ日本語化】

【データベース設定】

.env

ユーザ認証

【マイグレーション】

すでにdatabase/migrationsにusersテーブルとpassword_resetsテーブルのデータがあるのでマイグレーション。

C:\xampp\htdocs\lara>php artisan migrate

ん~~~ん。。。早速のトラブル—– orz

MySQLのユニーク制約の最大バイト数は767bytes。
Laravel5.4以降、標準のcharsetがutf8mb4になり1文字4bytes。
email varchar(255)の最大バイト数は 4*255=1020bytes でエラーだと。
ちなみにutf8なら3*255=765bytes。
MySQL5.7.7、MariaDB10.2.2では解消されてるらしい。

◆Laravelのcharset変更で対応。
config/database.php

C:\xampp\htdocs\lara>php artisan migrate

【パスワードリセット用メール設定(Gmail用】

.env

【認証機能生成】

・routes/web.phpに/homeが追記される
・app/Http/Controllers/HomeController.phpが生成される
・resources/viewsに必要なビューが生成される

/homeにアクセスすると/loginにリダイレクトされ認証画面に
あら簡単!

【要認証ページの設定】

以下のように認証が必要なコントローラーのコンストラクタでmiddleware(‘auth’)を呼び出すだけ。

【情報取得】

Session情報取得

ログインユーザ情報

ルーティング

ルーティングで使用する主なHTTPメソッドは

GET 取得
POST 作成
PUT 置換
PATCH 更新
DELETE 削除

【メソッドを指定してルーティング】

routes/web.php

【Resourcefulルーティング】

上記のルーティングをまとめて1行で設定できる。

※ただし、必要なルーティングだけを記述すべし。

method URL Action
[GET] sample index
[GET] sample/{id} show($id)
[GET] sample/create create
[POST] sample store
[GET] sample/{id}/edit edit($id)
[PUT/PATCH] sample/{id} update($id)
[DELETE] sample/{id} destroy($id)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする