ディレクトリ構成
以下 responses
ディレクトリ内はあくまで参考例です。利用ケースに準じて自由にカスタマイズ可能です。
mock_api_server/
├── index.php # モックサーバーのメインスクリプト
├── generate-schema.php # OpenAPI 3.0 スキーマ生成スクリプト
├── http_status.php # HTTPステータスコードの定義
├── start_server.php # ローカルサーバー起動スクリプト
├── .env # 設定用( .env.sample を参考に設定)
├── vendor/ # Composer のパッケージ
├── composer.json # PHPパッケージ管理用
├── composer.lock # Composer のロックファイル
├── responses/ # レスポンスデータ格納ディレクトリ(下記は初期バンドル構成)
│ ├── users/
│ │ ├── get/
│ │ │ ├── 1.json # 1回目のリクエスト用レスポンス
│ │ │ ├── 2.json # 2回目のリクエスト用レスポンス
│ │ │ ├── default.json # デフォルトレスポンス
│ │ │ └── delay.json # 遅延レスポンス
│ │ ├── delete/
│ │ │ └── default.json # DELETE時のレスポンス
│ │ └── post/
│ │ ├── 400.json # 400エラーのレスポンス
│ │ ├── failed.json # POST失敗時のレスポンス
│ │ └── success.json # POST成功時のレスポンス
│ ├── errors/
│ │ ├── 404.json # 404エラーレスポンス(JSON形式)
│ │ └── 500.txt # 500エラーのレスポンス(テキスト形式)
│ └── others/
│ ├── products/
│ │ └── put/
│ │ └── default.json # PUT時のレスポンス
│ └── get/
│ ├── default.txt # CSV形式のテキストデータ
│ └── userlist.txt # XML形式のテキストデータ
├── hooks/ # カスタムフック格納ディレクトリ
├── tests/ # ユニットテスト用のテストケース格納ディレクトリ
│ └── MockApiTest.php # 初期テストケース
├── phpunit.xml # ユニットテスト設定ファイル
├── version.json # プロジェクトパッケージのバージョン情報
├── schema/ # OpenAPI スキーマ出力ディレクトリ
└── logs/ # ログ保存ディレクトリ(.envで変更可能)
├── auth.log # 認証エラーのログ
├── error.log # エラーログ
├── request.log # リクエストのログ
├── response.log # レスポンスのログ
└── validation-error.log # OpenAPI スキーマバリデーションエラーログ