2020/4/27追記
Laravel入門本 第2版が出版されていたので広告を張り替えました。
この記事は第1版時の体験談になります。
PHPのフレームワークといえば、今ならなんといっても『Laravel(ララベル)』。
何がいいって、今までのフレームワークのいいとこどりで全部盛りってこと。
ラーメンでいったらトッピング全部盛り。
チャーシューありメンマあり海苔あり半熟卵ありと、そんな感じ。
ちと重いという声もあるものの個人的にはほとんど気にならず。
Laravelとの出会い
あれは2017年夏の事。
複数人での仕事が増えるにつれタスク管理しなきゃなと思い、
フリーソフトやアプリも探したけれどいまいちしっくりこず、
手軽に作る方法はないかと探した結果、見つけたのがPHPフレームワーク『Laravel(当時は5.4)』でした。
PHPフレームワークといえば、
5,6年前に『CakePHP (当時はCakePHP2)』に手を出し、インストールまではいったものの手詰まり、放置して以来。
どんなもんかいとググりにググり、
公式ページ、ララ帳、などの他に見つけたのが、これでした。
Laracast (Laravel 5.4 From Scratch)
最近流行りの動画講座。しかも無料。
惜しむらくは、全部英語ということ。
英語は久しく触れていなかったので大丈夫かいなと思いつつ、
エクセル片手にとにかく視聴して、
動画止めてエクセルにコマンド書いて、
動画ちょっと戻して再生して、
また止めてメモってと繰り返して。
およそ5分の動画を1時間かけて見るような状態が続き、
時にはまた1から見直して抜け漏れを埋めていくような作業を通じて、
夏に視聴して、秋の後半に、どうにか社内用のタスク管理システムができあがりました。
それから数ヶ月後、とある本を見る事になりました。
Laravel入門がめっさ読みやすい件
Amazonで評価が高く気になっていた、「Laravel入門」(青本)。
2017年夏に英語動画を視聴していた頃は販売されていなかったのですが、
本屋でたまたま見つけ、読んでみたらまぁわかりやすい。
特にスッキリと腑に落ちたのが、
- スコープの使い方
- ビューコンポーザーの使い方
- DBモデルとモデル(Eloquent)の記述方法の違い
といったあたり。
スコープ・・ コントローラ内のよく使う where句をスコープとして書いておくと コントローラがすっきりする。
ビューコンポーザー・・ 毎回表示させる処理をビューコンポーザーに書いておくとコントローラがすっきりする。
DBモデルとモデル(Eloquent)の記述方法の違い・・ ここは後で追記
その他にも、
- MVC(モデルビューコントローラ)の基本
- Routeの使い方、リソースフル(REST)
- バリデーション
- リレーション
- ログイン認証
- セッション
あたりもすっきりコンパクトにまとめられていて、
初めての方でもだいぶ取り組みやすいんじゃないかと。
とはいえ本を読んだ後はいずれググりまくることにはなるので、順序が逆になっただけといえばそうかもしれないけれど。
『Laravel』で、
- タスク管理システム
- 在庫管理システム
- 入退室管理システム
などつくりたいなぁと考えている方にはぜひおすすめです。
『Laravel』ではこんな記事も読まれています。
1. 【Laravel】マルチログイン対応ECサイトの講座をリリースしました【Udemy】2. 【PHP/Laravel】初心者向けの動画をリリースしました【Udemy】
3. 【Laravel(PHP)】初心者向け アプリのつくり方 をリリースしました【techpit】
4. 『Carbon』でよく使うパターンをまとめてみた【Laravel向け】
5. 【Laravel(PHP)】でできる事をわかりやすく(ざっくりと)まとめてみた【用語集も兼ねて】【初心者向け】
6. 【Laravel】フロントエンドをわかりやすくまとめてみた【初心者向け】
7. 【PHP】【Laravel】CSVエクスポートの方法〜5つのポイント〜
8. 【PHP】CSVインポートの方法〜大量データもバルクインサートでバッチリ!〜【laravel】
9. 【Laravel】ダミー(テスト)データを作る方法 シーダー(seeder)とfactoryとfaker【初心者向け】
10. 【Laravel】Webアプリ環境構築の仕方【Vue.js】【初心者向け】
11. 【Laravel】と【Vue.js】のサンプル動画を見ながらさらりと解説してみる
12. 【Laravel】マルチログイン(ユーザーと管理者など)機能を設定してみた【体験談】
13. 【Laravel】フォトギャラリーを作るための画像アップロード方法【php】
14. 【Laravel】多対多テーブルを複数つくる方法【ちょっとコツがいります】
15. 【Laravel】【Slack】に通知する方法をまとめてみた【自作ファサード】
アオキのツイッターアカウント。