Silex
表示
作者 | Fabien Potencier |
---|---|
開発元 | Silex contributors, SensioLabs |
最新版 |
2.3.0[1]
|
リポジトリ | |
プログラミング 言語 | PHP |
プラットフォーム | クロスプラットフォーム |
サポート状況 | 開発終了 |
種別 | Webアプリケーションフレームワーク |
ライセンス | MIT License |
公式サイト | [1] |
SilexはSymfonyコンポーネントを元に実装された、PHP言語でWebアプリケーションを開発するためのマイクロフレームワークである[2]。Symfony の成果物であるHttpKernel等の各種パッケージ、依存性注入を行うためのシンプルなDIコンテナ pimple 等で構成されている。また、Ruby向けマイクロフレームワークである sinatra の影響も受けている。
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コンテナとして機能している。
関連項目
[編集]脚注・出典
[編集]- ^ “Changelog - Documentation - Silex - The PHP micro-framework based on the Symfony Components”. 2017年5月22日閲覧。
- ^ https://silex.sensiolabs.org/
- ^ “The end of Silex”. 2018年4月17日閲覧。
- ^ “Providers - Documentation - Silex - The PHP micro-framework based on the Symfony Components”. 2017年5月22日閲覧。
- ^ “なぜ、EC-CUBEはSilexを採用したのか”. 2017年5月22日閲覧。