PHPフレームワークSlim: public/index.php コードリーディング
- public/index.php コードリーディング
静的ファイルの処理
if (PHP_SAPI == 'cli-server') { $url = parse_url($_SERVER['REQUEST_URI']); $file = __DIR__ . $url['path']; if (is_file($file)) { return false; } }
PHP_SAPI: PHP が使用しているインターフェイスの型
cil-server
: PHPのビルトインWEBサーバ- Refer: PHP: php_sapi_name - Manual
PHPのビルトインWEBサーバを使っていて、パスの対象が静的ファイルの場合は、falseを返す
composerを使って、ライブラリ群をロード
require __DIR__ . '/../vendor/autoload.php';
セッション開始
session_start();
アプリインスタンスの生成
$settings = require __DIR__ . '/../src/settings.php'; $app = new \Slim\App($settings);
設定ファイル読み出し
src/settings.php
- Default: エラー表示, content-length header, Renderer, Monolog
-
vendor/slim/slim/Slim/App.php
各種設定
// Set up dependencies require __DIR__ . '/../src/dependencies.php'; // Register middleware require __DIR__ . '/../src/middleware.php'; // Register routes require __DIR__ . '/../src/routes.php';
- 依存関係(Dependency Injection Container)のセットアップ
- ミドルウェア(デフォルトは空)登録
- ルートの登録
アプリケーションを走らせる
// Run app
$app->run();
- 生成したアプリインスタンスのrunメソッド呼び出し