Silexの初期設定

2016.12.19 (月)

Silexのインストールと初期設定でもって何かできるかといったら全然ダメでSilexがフレームワークとして動作するため(Silexの性能をフルに発揮するため)にはまだまだいろいろ設定が必要です。

ぐらいが必要です。マイクロフレームワークなのでここまでやってくれてないです。(面倒な方はSimfony2つかった方がいいかもです。)

index.phpに追加すべき機能いろいろ

Silexはデフォルトではすべてのアクセスがindex.phpで処理しているので、ふつうにphpファイルをDocumentRootにおくと機能しません。なのでふつうにプレーンのPHPファイルも機能しておくようにindex.phpに関数を追加します。※ECCUBEからパクリ

// see http://silex.sensiolabs.org/doc/web_servers.html#php-5-4
$filename = __DIR__.preg_replace('#(\?.*)$#', '', $_SERVER['REQUEST_URI']);
if (php_sapi_name() === 'cli-server' && is_file($filename)) {
    return false;
}

index.phpのできるだけ最初の方に書いておくとよいです。$app = new Silex\Application();のすぐ下あたりとかそれぐらいでよいです。
この機能は実際はhtaccessの設定でもrewrite処理に例外を加えることで可能ですが、silexのアプリケーションということでここもアプリケーション側で処理するのが妥当かもしれません。