SilexSymfonyコンポーネントを元に実装された、PHP言語でWebアプリケーションを開発するためのマイクロフレームワークである[2]。Symfony の成果物であるHttpKernel等の各種パッケージ、依存性注入を行うためのシンプルなDIコンテナ pimple 等で構成されている。また、Ruby向けマイクロフレームワークである sinatra の影響も受けている。

Silex
作者 Fabien Potencier
開発元 Silex contributors, SensioLabs
最新版
2.3.0[1]
リポジトリ ウィキデータを編集
プログラミング
言語
PHP
プラットフォーム クロスプラットフォーム
サポート状況 開発終了
種別 Webアプリケーションフレームワーク
ライセンス MIT License
公式サイト [1]
テンプレートを表示

2018年6月に開発の継続およびサポートが終了した[3]

特徴 編集

Silexは標準でデータベースアクセス接続 Doctrine DBAL の為の、DoctrineServiceProvider 、Twigテンプレートエンジンを利用するための TwigServiceProvider 、PSR-3に準拠したログ出力機構 monolog を利用するための MonologServiceProvider など、フレームワークとしての各種機能をサービスプロバイダという形で提供している[4]。これらを実際に利用する際は、必要な機能について Composer によるパッケージ依存解決を行い、Composerが必要となるパッケージのインストール、オートローディングを行う。

実行例 編集

以下にアプリケーションのルートへアクセスした際に「Hello World!」という文字列を表示する例を掲載する。

require_once __DIR__ . '/../vendor/autoload.php';

$app = new Silex\Application();

$app->get('/', function() use($app) {
    return 'Hello World!';
});

$app->run();

この例で登場する $app 内に収められたオブジェクトがDIコンテナとして機能している。

関連項目 編集

脚注・出典 編集