Symfonyは、CakePHPなどと同じPHP上で動作するフレームワークです。CodeIgniter、CakePHP、Symfony、Zend Frameworkをまとめて、「PHP4大フレームワーク」と呼んだりすることもあります。
Googleトレンドの調査「PHPフレームワークの世界でのトレンド(2012年12月)」では、PHP4大フレームワークの中では、CodeIgniterが39%を占め、CakePHPが26%、Symfonyが21%、Zend Frameworkが14%と第3位につけています。一方日本では、同じ2012年12月の調査ではCakePHPが約7割を占めており、圧倒的人気となっています。
開発のスポンサーはフランス企業
Symfonyのスポンサーはフランスの Sensio Labsです。このため、初期の名称は「Sensio Framework」でしたが、オープンソースにするにあたり、「Symfony」と改名されました。
フレームワークの開発といえば、以前は個人レベルでの開発が主流でした。しかし、2007年ごろからSymfony やZend Technologies社のZend Frameworkのように開発のスポンサーとして企業がバックにつくものが登場し、その流れを変えつつあります。
Symfonyでは、中心的な開発者がシリアルアントレプレナー(ベンチャー事業を起業し会社を成長させ、大企業に売却して利益を得て、その資金を元に再び起業する人)として携わっています。
フレームワークの開発に企業が関わることで、開発のスピードが増し、機能が充実して信頼性が増すようになりました。
米Yahoo!など大規模プロジェクトで採用進む
Symfonyは、2つの先行するフレームワークの利点を引き継いでいます。まず、MVC model 2に基づいて作られたPHPのフレームワークとして一時注目を集めたMojaviの「MVC機能」。ついで、Ruby言語フレームワークとして高い人気を誇るRuby on Railsの「圧倒的な開発効率を実現するための機能」です。
高いセキュリティと安定性に加え、PHPの強みである処理速度とスケーラビリティを保つこと、サンプルコード、豊富なドキュメントが用意されていることなども利点です。また、多くの環境と互換性をもち、連携させることができるのも強みです。サーバー、データベース、ブラウザ(Ajax)、OSとの相性が非常に良いといわれています。
こうしたメリットは、複数人での開発に大きなアドバンテージを持つことができます。例えば、アメリカではYahoo!がSymfonyを積極的に利用して、開発を進めていることで知られます。
一方、シンプルで動作が軽快なCakePHPに比べ、Symfonyは機能が充実している分、処理の重さや使いこなすまでの学習コストの高さといったデメリットが指摘されています。
日本ではCakePHPが圧倒的シェアを占めていますが、世界的なトレンドとしては、Yahoo!のような大規模なWEBサービスに採用されていることで信頼性が増し、Symfonyが今後もシェアを伸ばすと予測されています。