アシアルブログ

アシアルの中の人が技術と想いのたけをつづるブログです

symfonyでの構築手順とよく使うプラグイン

皆さん、ご無沙汰しております。
笹亀です。

最近は夏バテ気味で冷えピタが欠かせなくなりいつも貼って仕事をしています。
昨日は世紀の日食でしたが、東京は曇っていて部分日食なの上に追い打ちをかけるように微妙でしたね^^;

さて、本日はsymfonyを使って実際に事例を基に手順をご紹介したいと思います。


まずはsymfonyを使う場合にどのバージョンを使うのかを考えます。
下記のようにsymfonyのバージョンは互換性があまりない場合が多いので、選択する際には注意が必要です。



1.0:リリース済み
 ※2010/01にサポート終了
1.1:リリース済み(1.0→1.1への移行互換性がない)
 ※2009/06にサポート終了
1.2:リリース済み(1.0→1.2への移行互換性がない、1.1→1.2は互換性がそこそこある)
 ※2009/11にサポート終了
1.3:2009/11リリース予定(1.2→1.3は互換性があり、移行は簡単らしい@Fabien氏談)

2.0:来年中にリリース予定(1.2、1.3などからの互換性はない)
 ※今は小文字のsymfonyだが、2.0からSymfonyになる


今からsymfonyを使うならば、1.2がベストだと思われます。
1.2はサポート終了と同時に1.3がリリースされると予想ができるので、1.3が利用できる状態になると1.2→1.3へ移行を行って使用することになると思います。
また、symfonyの1.0を使っている人にとっては1.2は別ものと思った方がよいです。
symfony1.2を使用する場合には、1.2の基本知識、Form周りの習得が必要となります。

バージョンの選定が終わったら、次にORM(オブジェクトリレーショナルマッパー)のプラグインを選定します。symfonyではPropelとDoctrineが有名なORMになります。
弊社では、ほとんどのプロジェクトでDoctrineを使用しており、稼働実績があります。
もし決まっていないのであれば、Doctrineの使用をおすすめしています。
 ※DoctrineはPHP5.2.3以降でないと動作しません
■Doctrineのホームページ
http://www.doctrine-project.org/

上記の2つの選定でほぼ基本準備は終了です。
後はsymfonyのバージョンにそって作成をしていくのみです。

さてここからは構築でよく使うプラグインの紹介になります。
プラグインはバージョンに依存しますので、対応しているバージョン情報を必ず確認して使用するようにしましょう。

jpMailPlugin
日本語環境では一般的なJIS(iso-2022-jp)でのメール送信が簡単に行えるようになるプラグインです。お問い合わせメール、HTMLメール、メールマガジンの送信など幅広いメール周りの動作をフォローしてくれるプラグインで、とてもよく利用させていただいております。
詳しくは私が記載したブログがありますのでそちらをどうぞ^^
http://blog.asial.co.jp/425

sfSslRequirementPlugin
アクションのためにSSLによる暗号化のサポートを提供するプラグインです。
security.ymlにrequire_sslとallow_sslを設定することで自動的にリダイレクト処理を行います。
SSLが必要なサイトの場合は必ず使っています。アクションごとに設定できるので便利です。

sfMemcachePlugin
memcacheをsymfonyで利用できるようにしたプラグインです。memcacheはとても高性能なキャッシュでキャッシュを利用するサイトを構築する際には必ず使っています。
下記のURLにmemcacheについて調査したブログがありますので是非見てみてください^^
http://blog.asial.co.jp/220


以上がよく使うプラグインになります。
その他にもサイトの特性を考えてカートのプラグイン(sfShoppingCart)を使ったり、エクセルのプラグイン(sfPhpExcelPlugin)を使ったりしています。

皆様のsymfonyライフにお役に立てれば幸いです。
何か「これは便利!」なプラグインがございましたら、教えていただけましたらうれしいです^^