Silexの紹介記事を寄稿しました&さらに最新情報


Silex のことが書かれた最初の記事かも?

もうみなさんご存知ですよね。今月のWEB+DB PRESS Vol.65 に"PHPフレームワーク実践活用〜Symfony2,CakePHP,Silex〜"という特集があります。

今回、声を掛けていただき 6ページにまとめた Silex の紹介記事を寄稿しました。

http://gihyo.jp/magazine/wdpress/archive/2011/vol65

内容は、ただSilexの説明をするだけでは面白くないので、CSVファイルで用意した新着情報の一覧表示、詳細表示を行う小さなアプリケーションのサンプルを作り、そのソースコードでSilexの特徴を解説するという流れになっています。

実際にサンプルコードもダウンロードできるようになりますので、環境さえあればソースコードを一式展開するだけで試すことができるようになっています。

予想外の出来事とお詫び

記事を提出してほっとしていたら、Silexのエクステンションの仕組みが変更になり、最新版のSilexにアップデートしてしまうと動かなくなるということが発覚!

仕様変更の詳細は公式サイトのChangelogのページの「2011-09-22」を参照してください。
Changelog - Documentation - Silex - The PHP micro-framework based on the Symfony Components

具体的にはインターフェースの名前が変更されました。

Twigエクステンションの場合
(旧) Silex\Extension\TwigExtension
(新) Silex\Provider\TwigServiceProvider

というわけで、もし silex.pharを最新版で使う場合は名前空間の指定を変更しなければなりません。
サンプルコードに入っているsilex.pharを使っている場合は変更しなくても動きます。

また、日本語ドキュメントにもまだ反映できていないのでこの点は申し訳ありませんがご注意いただければと思います。

ちょっとしたこぼれ話

10/15,16と大阪で PHPMatsuri2011 が開催され、Silexの開発者でもあるFabienさんが来日されていました。
せっかくなので、Silexはどこで実際に利用されているのかと聞いてみました。
すると、Silex, Twig, SwiftMailerなどの公式サイトは全てSilexで作られているとのこと。
やはりああいう感じのシンプルなページ構成のサイトを作るのにはぴったりなんですね。

PHPMatsuriではSilexのルーティングをハックしていたのですが、ハック後に動いているように見えるのですが、なぜか単体テストがレッドになってしまう現象に遭遇。
どうしても謎な挙動だったのですが、直接Fabienさんに見てもらって色々とアドバイスをもらうという超贅沢な経験もしつつ充実した2日でした。

PHPMatsuriについては、のちほど簡単にレポートをまとめます。にんにん。。