基礎文法からテストとデータベースで守るツールまで
『PHP』コースをリニューアルしました

Progate は『PHP』コースをリニューアルしました!

これまで学べた基礎文法とクラスに加えて、Composer、PHPUnit によるテスト、PDO とデータベース、フォームとセッション、CSRF 対策、静的解析など、実務のPHPで毎日使う内容を追加し、全32レッスン・170演習に広がりました。

各レッスンの最後には、学んだことを振り返る4択クイズと、自由にコードを試せるプレイグラウンドもあります。

仕上げには、道具の貸出・返却・予約待ちをデータベースに保存する「まちの道具図書館」のツールを自分の手で組み立てます。インストールは不要で、ブラウザのみでPHPを学べます。

 

何ができるようになる?

・変数・条件分岐・配列・繰り返し・関数で、PHPのプログラムを書ける
・型宣言で関数の約束事を決め、想定外の入力を受け付けない処理を書ける
・ファイル・CSV・JSON・日時を扱う、コマンドラインの小さなツールを作れる
・クラス・インターフェース・列挙型で、役割ごとにプログラムを分けて組み立てられる
・Composer で部品を管理し、PHPUnit で自分のコードをテストで確かめられる
・PDO と SQLite でデータを保存し、トランザクションで途中の失敗に備えられる
・フォームの入力をエスケープや CSRF トークンで安全に扱える
・PHPStan の指摘を手がかりに、既存のコードを壊さずに直せる

 

テストとデータベースまで、手を動かして学べる

文法を覚えたあとには、フォームから届いた値をどう扱えばいいか分からない、直したら別のところが壊れそうで怖い、といった壁があります。新しいコースでは、その壁を自分で動かしながら越えていきます。

・フォームから送られた人数をセッションに保存し、CSRF トークンを照合してから受け付ける
・タグに見える名前を送られても、htmlspecialchars でそのまま文字として表示する
・PDO と SQLite で記録を保存し、途中で失敗した変更をトランザクションで取り消す
・PHPUnit でテストを書き、書いたテストが不具合を見逃さないかまで「できた!」で確かめる
・PHPStan の指摘を手がかりに、古い寄贈品管理ツールの型の誤りを直す

フォームやセッションの演習は、ブラウザの中のプレビューで実際に送信して確かめます。PHPUnit によるテストは5つの演習、データベースは2つのレッスンで9つの演習と、時間をかけて手を動かします。

 

これまでのPHPコースから何が変わった?

これまでのコースは、Webページを作りながら基礎文法からオブジェクト指向までを学ぶところで終わっていました。Composer やテスト、データベース、フォームの安全な扱いといった、実際の開発で毎日のように使う書き方には触れていませんでした。新しいコースでは、この「基礎の先」をまとめて学べるようにしました。

・Web開発基礎編、オブジェクト指向初級〜上級編、道場の5レッスン・77演習から、32レッスン・170演習、約55時間のコースへ
・Composer、PHPUnit、データベース、HTTP とフォーム、セッションと CSRF 対策、静的解析が新しく入りました
・パイプ演算子や property hooks など、いまのPHPで使われる書き方に合わせました
・学んだことを組み立て直す道場が4つになりました
・レッスンごとに、ひつじ仙人の4択クイズと、自由にコードを試せるプレイグラウンドで振り返れます

 

どんな順番で学ぶ?

前半で基礎とオブジェクトの扱いを固め、後半の「実務レベルまで」で実際の開発で使う書き方へ進みます。

基礎(17レッスン)
・はじめてのPHPと実行のしくみ、変数・型・計算、文字列と日本語、条件と入力の境界、配列とデータの形、繰り返しと集計、関数で処理を分ける、型宣言と関数の契約
・道場: 漂着物の調査報告
・コールバックと配列操作、小さなCLIツールを作る、エラーを読み、例外を扱う、ファイル・CSV・JSON、日時と再現できる処理
・道場: 字幕データの修復ツール
・クラスと状態の管理、値とオブジェクトの違い

実務レベルまで(15レッスン)
・インターフェースと依存の分離、継承・抽象クラス・トレイト、列挙型とモダンなPHP、名前空間とComposer、PHPUnitで自分のコードを守る
・道場: 展示会の搬入受付
・反復可能なデータと標準API、PDOとデータベース、永続化とテストの設計、HTTPとPHPの接点、フォームと状態変更、実務コードの読み方と境界、静的解析と保守、総合制作の準備と設計レビュー
・道場: まちの道具図書館

 

道場ではどんなツールを作る?

道場では、それまでのレッスンで学んだことを組み合わせて、実際の仕事にありそうなツールを作ります。どの道場も、途中で仕様の変更が入ります。

・漂着物の調査報告: 欠けや範囲外の値が混ざった海岸の調査記録を検証して、浜辺ごとに集計します。最後に「ガラス」の分類が追加されます
・字幕データの修復ツール: 字幕データの不備を見つけて報告し、時刻を補正して JSON に保存するコマンドラインツールを作ります。原本を書き換えず、同じ操作をもう一度実行しても結果が変わらないように保存の手順を組み立てます
・展示会の搬入受付: 受付のルールを設計し、受付の流れを守るテストを書きます。判定では、書いたテストが不具合を見逃さないかまで確かめます
・まちの道具図書館: 道具の貸出・返却・整備・予約待ちを SQLite に保存するコマンドラインツールを作ります。データベースにわざと故障を起こし、途中で失敗しても道具の状態や貸出の記録が食い違わないことをテストで確かめます。PHPStan のレベル8で型の誤りをなくし、貸出上限の変更依頼に既存のデータを消さずに応え、最後は初めて触る人が動かせるように README で引き継ぎます

 

こんな人におすすめ

・はじめてプログラミングを学ぶ方
・Laravel や WordPress を学ぶ前に、PHPの基礎を固めたい方
・PHPの文法は分かるけれど、テストやデータベースを使った開発まで練習したい方
・実務でPHPを使っていて、テストや静的解析を体系的に学び直したい方

 

これまでのPHPコースはどうなる?

これまでのPHPコースは、2027年3月31日に公開を終了する予定です。それまでは引き続きご利用いただけます。これまでのコースでの学習の進み具合は新しいコースには引き継がれないため、新しいコースは最初のレッスンから進めてください。

 

対象・受講方法

プログラミング未経験の方でも大丈夫です。環境構築の必要もありません。最初のレッスン「はじめてのPHPと実行のしくみ」は無料で学べます。変数・型・計算から値とオブジェクトの違いまでの16レッスンはプラスプラン、インターフェースと依存の分離から道場のまちの道具図書館までの「実務レベルまで」15レッスンはプロプランでご利用いただけます。学習時間の目安は、基礎が約25時間、実務レベルまでが約31時間です。

→ コースの詳細・受講はこちら