Lravel5.3 忘備録1
ちょっと前から海外で流行っていると聞き、ようやく最近身近でも名前をよく聞くようになったPHPのフレームワークLaravelを勉強することになったので忘備録。
バージョンは5.3。この記事を書いてる時点で最新。
とりあえずWin環境で簡単に動きを見たかったのでXammp導入
(本当は仮想環境でやりたいけれど、また今度)。
Xammpを入れたあと、XammpのPHPを環境パスに設定
Laravel5,3を使うにはPHP5.6.4以上が要求されるとのこと。
Compserを導入
(Win用にもインストーラが用意されているので簡単に導入できる)
htdocs配下にディレクトリ作成(今回は適当にlaravelStudyとした)。
そこから以下のコマンドを叩く。
composer create-project laravel/laravel:5.3 C:\xampp\htdocs\laravelStudy
( 公式ドキュメントでは --prefer-dist が付随しているがプロジェクトのcompser.json内に指定されているので不要らしい)
これでlaravelStudyディレクトリ配下にフレームワーク一式が生成される。
以下のURLでLaravelの画面が開けば成功。
http://localhost/laravelStudy/public
localhostだけで表示されるよう修正
C:\Windows\System32\drivers\etc\hosts
127.0.0.1 laravelStudy
C:\xampp\apache\conf\extra\httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot C:\xampp\htdocs\laravelStudy\public
ServerName laravelStudy
</VirtualHost>
<Directory "C:\xampp\htdocs\laravelStudy\public">
order deny,allow
allow from ALL
</Directory>
次にDBに接続(今回はMySQL)
ルートディレクトリ直下にある.envファイルを修正
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=test
DB_USERNAME=root
DB_PASSWORD=
*ローカルで最低限の挙動見るための設定
この.envファイルはバージョン管理から外しておくこと
(プロジェクト生成された際に用意される.gitignoreでデフォルトで管理外にされている)。
とりあえず適当な登録更新画面を作りたい(MVC一通り触りたい)と考える。
ドキュメントをみてわかりづらいと思ったら、現時点では5,3にはチュートリアル的なものはないらしい。
ので5,2のチュートリアルを試す。
5.1の情報がある程度見つかる中、最初に躓くのはroutes.phpの配置場所が異なっていることだと思う。
これでLaravelのRouting(ルーティング)は完璧だ! | Reffect Blog -
引用
これまでは、\app\Http\routes.phpファイルにルーティングを記述していましたが、Laravel 5.3からはディレクトリ構造が変わって、 \routesディレクトリの中にルーティングのファイルが格納されています。
3つのファイルがありますが、主に\routes\web.phpにルーティング情報を記述していきます。
とりあえずweb.phpにルーティング情報を記載する形でチュートリアルを進めると、
最後までいけた。動くこと優先で確認したのでもう少しコードを振り返りたいと思う。
また、上記のチュートリアルだとすべてコントローラとしての振る舞いをweb.phpに書かれてしまっているので、コントローラに分ける方法を調べたい。
用語メモ
artisan(アルチザン)…Laravelアプリケーションを操作するコマンドラインツール
クエリビルダー…メソッドチェーンを使ってSQLを組み立てる。
Bladeテンプレート…PHP公文のラッパー。テンプレートエンジン。
マイグレーション…直接DDLを描くのでなく、PHPのソースとしてテーブル作成、変更を管理する仕組み。
備考
XammpのPHPでないPHPのパスが通っていて、Composerのコマンド実行時にOpenSSLのモジュールがないとエラーが出た。
こういうモジュールがあらかた揃っているのでXammpは楽。