メインコンテンツまでスキップ

「php」タグのついた40記事

全てのタグを見る

Laravel × DDD × クリーンアーキテクチャ実践ガイド

Laravel 未経験でも大丈夫。Vue/React など SPA 開発者を対象に、API バックエンドとしての Laravel とドメイン駆動設計 (DDD)・クリーンアーキテクチャをステップバイステップで解説する全 20 章のガイド。値オブジェクト・エンティティ・集約・リポジトリの理論から、Laravel プロジェクトでの実装パターン・トランザクション・テスト・認証までを網羅します。

Laravel API 開発ガイド

Laravel を API バックエンドとして使うための全 22 章のガイド。ルーティング・Eloquent・バリデーションの基礎から、認証認可 (Sanctum / Policy)・キャッシュ・キュー・タスクスケジューラ・ファイルストレージ・本番運用までを、EC サイトの注文システムを題材に順を追って解説します。Blade などのフロントエンド機能は扱いません。

Laravel API 開発の基礎 — Controller・FormRequest・Eloquent・DI

Laravel 未経験者向けに API バックエンド開発の基礎を解説。ルーティング・Controller・FormRequest・API Resource・Eloquent ORM・DI コンテナ・Sanctum 認証、本書で使う PHP 8.x 構文 (readonly / enum / コンストラクタプロモーション) までをまとめます。

PHPクラス設計ガイド

PHP でクラス設計そのものを入門から実践まで学ぶ全14章のガイド。フレームワーク非依存の設計原則 (カプセル化・単一責任・継承とコンポジション・インターフェース・SOLID) から、Laravel でのモデル/サービスクラス設計まで一気通貫で扱います。

PHPのクラス基本文法

PHPにおけるクラスの基本文法。プロパティ・メソッド・コンストラクタ・可視性修飾子・readonly・コンストラクタプロモーション・enumを解説します。

イベントと通知 — 注文確定から先を疎結合にする

Laravel API 開発ガイドの第15章。サービスクラスに処理が足され続ける問題をイベントとリスナーで解きます。リスナーの自動検出、Notification クラスと Mailable、同期送信のコストの測り方、Notification::fake によるテストと Mail::fake との使い分けも扱います。

エラー設計 — 例外を HTTP レスポンスに翻訳する

Laravel API 開発ガイドの第9章。エラーレスポンスの形を決め、カスタム例外クラスを作り、bootstrap/app.php の withExceptions を唯一の変換地点にします。何をログに送るか、何をクライアントに見せないかも扱います。

キャッシュ — 速くするために、正しさをどこまで諦めるか

Laravel API 開発ガイドの第18章。何をキャッシュしてよいかの判断、Cache::remember とドライバ選択、キー設計、TTL と明示的な失効、スタンピード対策 (Cache::flexible / Cache::lock)、Laravel 13 の Cache::touch、キャッシュを使うテストの書き方を扱います。

キューの基礎 — 重い処理をリクエストの外に出す

Laravel API 開発ガイドの第16章。リスナーに ShouldQueue を付けて非同期にし、queue:work でワーカーを動かします。Job クラスと dispatch、ドライバの選び方、SerializesModels、トランザクション内で dispatch しないための afterCommit、Queue::route、Queue::fake によるテストも扱います。

テスト — Pest で API の契約を固定する

Laravel API 開発ガイドの第10章。Pest の書き方を導入し、ここまでに作った API に Feature テストを書きます。正常系だけでなく失敗パスを固定する理由、テストデータの用意、そして以降の章で守るテストの型を決めます。

はじめに — 何を作り、何を作らないか

Laravel API 開発ガイドの第1章。チュートリアルどおりに書いた注文 API が本番で壊れる 3 つの場面を示し、この連載が扱う範囲と題材、既存ガイドとの読み分けを整理します。

ファイルストレージ — 商品画像と領収書 PDF

Laravel API 開発ガイドの第19章。ディスクという抽象と local / public の使い分け、アップロードの検証と保存、Sanctum の ability による保護、非公開ファイルの配信と署名付き URL、ジョブでの PDF 生成、ファイルとレコードの整合、Storage::fake によるテストを扱います。

リクエストライフサイクルと Laravel 13 の骨格

Laravel API 開発ガイドの第2章。1 つのリクエストが public/index.php からコントローラまで届く経路を追い、bootstrap/app.php・サービスコンテナ・サービスプロバイダ・設定ファイルがその経路のどこに刺さるかを整理します。

ルーティング設計と最初のエンドポイント

Laravel API 開発ガイドの第4章。install:api で API 用の骨格を作り、apiResource でルートをまとめ、ルートモデルバインディングで ID をモデルに変換します。URL 設計・バージョニング・ステータスコードの決め方も扱います。

一覧 API — ページネーション・フィルタ・N+1

Laravel API 開発ガイドの第8章。商品一覧 API を題材に、ページネーション 3 種の使い分け、フィルタとソートを安全に受け取る方法、N+1 問題の観測と eager loading による解決、そして機械的に検出する仕組みを扱います。

入力の検証 — Form Request で境界を固める

Laravel API 開発ガイドの第5章。注文作成 API を題材に、コントローラ直書きのバリデーションを Form Request へ移します。配列とネストしたデータの検証、検証前後の処理、日本語メッセージ、そして形式チェックとビジネスルールの境界線を扱います。

凝集度・結合度とSOLID原則の総整理

第1部の集大成として、開放閉鎖・リスコフ置換・インターフェース分離の原則を補い、凝集度と結合度という物差しでこれまでの原則を振り返ります。

出力の設計 — API Resource でレスポンスの形を決める

Laravel API 開発ガイドの第7章。モデルをそのまま返す危うさを示し、API Resource でレスポンスの形をコードとして固定します。リレーションの含め方、条件付きの項目、日付・金額・enum の表現、data ラッピングを扱います。

単一責任の原則

単一責任の原則とクラスを小さく保つ考え方。god classの兆候と、責務分割の実例を解説します。

認可 — Gate と Policy で「誰が何をできるか」を決める

Laravel API 開発ガイドの第12章。注文の一覧と詳細を作りながら、Policy によるモデル単位の認可を実装します。一覧 API では Policy が効かない理由、403 と 404 の使い分け、認可漏れをテストで検出する方法を扱います。

認証 — Sanctum によるトークン認証

Laravel API 開発ガイドの第11章。Sanctum で会員登録・ログイン・ログアウトを作り、ルートをトークン認証で保護します。ゲスト注文を会員注文へ移す手順、トークンの権限と有効期限、テストでの認証済み状態の作り方まで扱います。