「Laravelが求人に多いから、Laravelから始めていい?」

未経験の方からよく受ける質問です。
答えは 「いいえ。素のPHPを1カ月やってからにしてください」 です。

ただ、この記事で本当に伝えたいのは順番の話ではありません。
順番を守っても止まる人がいるという話です。僕がそうでした。


結論:素のPHPを1カ月 → Laravelを1カ月

1. 素のPHP(約1カ月・80時間)
2. Laravel(約1カ月・80時間)
3. Laravelでポートフォリオ制作(約2カ月)

素のPHPは「深く」ではなく「一通り」でOKです。
目的は、Laravelが裏で何をやっているかを想像できるようにすることです。


なぜLaravelから始めてはいけないのか

Laravelは非常に便利なフレームワークです。数行書くだけでログイン機能ができてしまいます。
しかし、便利さの裏で大量の処理が自動的に走っています。

  • URLとファイルの結びつけ(ルーティング)
  • フォームから送られた値の受け取り
  • データベースへの接続
  • SQLの組み立て
  • セッションによるログイン状態の保持

素のPHPを知らないままLaravelを始めると、エラーが出たときに「どこで何が起きているか」がまったく想像できません。


ただし、順番を守っても止まります

ここからが本題です。

僕はHTML・CSSで模写サイトを作れるようになって、そのあときちんとPHPに進みました。
順番としては正しいです。それでもそこで数年、足踏みしました。

理由はひとつです。
いまいち、アプリをどう作っていけばいいのかが分からなかったんです。

文法は分かる。フォームの送信もできる。データベースにも保存できる。
なのに「じゃあ、これをどう組み合わせてアプリにするのか」がまったく見えませんでした。

順番の記事はたくさんありますが、ここでつまずく話はあまり書かれていません。なので書いておきます。


詰まっているのは文法ではなく「どこに書けばいいか」

今、僕は未経験の方にプログラミングを教えています。
学習中のS.Tさんが、こう言っていました。

Laravelはどこに何があって、どのファイルがどういう役割で、どういう流れなのかが理解できていない。だから、どこに何を書いたらいいか分からない

これ、当時の僕とまったく同じです。

Laravelはファイルがたくさんあります。
教材のとおりに書けば動きますが、自分で作ろうとした瞬間に「で、これはどのファイルに書くんだ?」で止まります。

なので僕がS.Tさんに最初にやったのは、文法の説明ではありません。
どのファイルがコントローラーで、どのファイルがルートなのかを教えました。

先に地図を渡すイメージです。ここが分かると、教材の読み方が変わります。

最初に覚えるファイルの役割

場所役割ひとことで言うと
routes/web.phpルーティング「このURLが来たら、この処理へ」の受付
app/Http/Controllers/コントローラー実際の処理を書く場所
app/Models/モデルデータベースとのやり取り
resources/views/ビュー(Blade)画面の見た目

この4つだけ先に覚えてください。
「URLを叩く → ルート → コントローラー → モデル → ビュー」という流れを口で説明できるようになると、一気に進みます。


素のPHPで学ぶべき範囲(これだけでOK)

1. 基本文法(1週間)

  • 変数、配列、連想配列
  • if文、for文、foreach文
  • 関数

JavaScriptを先にやっていれば、ほぼ同じ感覚で書けます。

2. フォームの送受信(1週間)

  • GET と POST の違い
  • $_POST で値を受け取る
  • 受け取った値を画面に表示する
  • 入力値のチェック(バリデーション)

ここでセキュリティの基本にも触れておきます。

  • 受け取った値をそのまま表示しない(エスケープする)
  • 数値のつもりの値が数値か確認する

3. データベース(2週間)

  • MySQLの基本
  • SQL:SELECT / INSERT / UPDATE / DELETE
  • PDOを使った接続
  • プレースホルダを使った安全なSQLの書き方

ここは絶対に飛ばさないでください。
Laravelを使うとSQLをほとんど書かなくなりますが、裏で何のSQLが発行されているか分からないと、不具合もパフォーマンス問題も解決できません。

4. セッション(数日)

  • ログイン状態をどうやって保持しているのか
  • $_SESSION の基本

素のPHPでやらなくていいこと

  • オブジェクト指向の深い理論(クラスの書き方が分かれば十分)
  • 素のPHPで大規模なアプリを作ること
  • 古い書き方(mysql_ 系の関数など)

ゴール:フォームから送信した内容をデータベースに保存し、一覧表示・編集・削除ができる。


Laravelは「1周でわかる」と思わないこと

ここが一番きつい部分なので、先に言っておきます。

僕が伴走したSさんは、HTML・CSSで止まっていた状態から始めて、6カ月でエンジニア転職しました。
ただ、その過程はきれいではありません。

Laravelの教科書を5周するまで、流れも書き方も理解できていませんでした。

最初のうちは意味が分からなすぎて、一緒にやらないと進まない日々でした。
それでも繰り返しているうちに、5周目あたりで急に流れがつかめてきたんです。

そこからは早かったです。

  • 自分でどういうコードを書けばいいか見えてきた
  • ChatGPTへの質問の仕方まで上手くなった
  • エラーで詰まったときの調べ方が身についた

ここで知っておいてほしいのは、1〜4周目は「分かっていない状態」が続くのが普通だということです。

これを知らないと、2周目あたりで「自分には向いていない」と思ってやめます。
向いていないのではなく、まだ回数が足りていないだけです。


Laravelで最初に押さえる範囲

1週目:MVCの流れをつかむ

  • ルーティング(web.php)
  • コントローラ
  • ビュー(Blade)

「URLを叩く → ルーティング → コントローラ → ビュー」
この流れを口で説明できるようになるのが目標です。

2週目:データベース

  • マイグレーション(テーブル定義)
  • モデルとEloquent
  • 一覧・詳細・作成・編集・削除

素のPHPでSQLを書いた経験があると、「あ、これは裏でSELECTしているんだな」と理解しながら進めます。

3週目:認証とバリデーション

  • Laravel標準の認証機能でログイン・新規登録
  • フォームリクエストによるバリデーション
  • ミドルウェアで未ログインを弾く

4週目:小さなアプリを1つ作る

学んだ内容だけで、シンプルなアプリを作ります。
例:メモアプリ、タスク管理、読書記録

ここで作るのは練習用です。ポートフォリオは別で作ります。


詰まりやすいポイントと対処

詰まる場所よくある原因確認すること
画面が真っ白ビューのファイル名違い、構文エラーログを見る(storage/logs
404が出るルーティングの記述漏れphp artisan route:list で確認
ログイン後に戻されるミドルウェアの設定どのルートに認証がかかっているか確認
データが保存されない$fillable の設定漏れモデルの $fillable を確認
CSRFトークンエラーフォームに @csrf がないBladeのform内を確認

共通のコツ:エラーが出たら、まずログファイルを見ること。
画面のエラーより詳しい情報が書かれています。


よくある質問

Q. 素のPHPを飛ばしてはダメですか?
A. 飛ばすと、エラーが出たときに何も想像できなくなります。1カ月でいいので通してください。

Q. 教科書を何周すればいいですか?
A. 5周を目安にしてください。1〜4周目は分からなくて普通です。そこでやめる人がほとんどです。

Q. 途中で何をすればいいか分からなくなりました。
A. それが普通です。僕はそこで数年止まりました。文法の問題ではなく「全体の流れが見えていない」ことが原因なので、ファイルの役割から確認し直してください。


まとめ

  • 順番は「素のPHP1カ月 → Laravel1カ月 → ポートフォリオ2カ月」
  • Laravelから始めると、エラーが出たときに何も分からなくなる
  • 順番を守っても止まる。僕はそこで数年足踏みした
  • 詰まる原因は文法ではなく「どこに書けばいいか分からない」こと
  • まずファイルの役割(ルート・コントローラー・モデル・ビュー)を覚える
  • 教科書は5周。4周目までは分からなくて当たり前

僕は数年止まりました。Sさんは6カ月で抜けました。
違いは才能ではなく、「今が分からなくて当たり前の時期だ」と言ってくれる人がいたかどうかだけです。

次に読む記事


未経験からエンジニア転職までの6カ月ロードマップを無料で配布しています。LINEから受け取れます。