ダウンロード sample.zip (794.0 B)
symfonyを使ってみよう(1/3)
ではここから実際にsymfonyをインストールして、ごく簡単なアプリケーションを作成してみることにしましょう。
symfony利用のための環境構築設定
symfonyにはsandboxという練習用環境まで用意されているのですが、今後実際にアプリケーションを作っていきますので、今回はこれを利用せず、一からインストールすることにしましょう。
→ダウンロード先
また、sandboxを使ったチュートリアルも公開されています。
インストールはPEARを使うのが便利です。PEARを使わなくてもインストールは可能ですが(詳細な手順についてはsymfony book(後述)を参照してください)が、本稿ではよりシンプルなPEARを用いた手順に沿って解説します。
[1]symfonyをインストールする
symfony本体のインストールは、コマンドプロンプトから以下の手順で行ってください。ここでは安定版の0.6.3ではなく、PHP5.2に正式対応しているベータ版の1.0.0-beta2をインストールします。
> pear upgrade PEAR (PEARをアップグレード) > pear channel-discover pear.symfony-project.com (symfonyのチャネルに接続) > pear install symfony/symfony-beta (symfonyをインストール) downloading symfony-1.0.0beta2.tgz ... Starting to download symfony-1.0.0beta2.tgz (1,632,555 bytes) ............................................................................................................................................
......................................................................
......................................................................
.........................................done: 1,632,555 bytes install ok: channel://pear.symfony-project.com/symfony-1.0.0beta2
インストールの成否については、symfonyコマンドで確認が可能です。
> symfony -V symfony version 1.0.0-beta2
上記のように、現在インストールされているsymfonyのバージョンが表示されれば、symfonyは正しくインストールされています。
symfonyをインストールすると、依存関係にあるpakeが合わせてインストールされます。pakeとは、主にsymfonyコマンドが内部で使用しているプロジェクト管理ツールです(名前はrubyのrakeコマンドからきています)。「pakefile.php」という設定ファイルに従って、後述するプロジェクトやアプリケーション、モジュールの管理作業を自動化しています。実際面ではsymfonyコマンドを入力することでpakeが使用されます。ちなみに2006年12月27日現在では、
- symfony 1.0.0-beta2
- pake 1.1.4
がインストールされます。実際はこれらと同時に、依存関係にあるcreole(データベースアクセス用ライブラリ)、propel(O/Rマッパー)がインストールされています。さらに0.6.3では必須にもかかわらず別個にインストールが必要だったphing(Javaで言うAntのようなもので、PHPアプリケーションのテストやアーカイブ化などを支援するツール)も、1.0.0-beta2では同時にインストールされるようになりました。
[2]symfony動作のための環境設定を行う(httpd.conf)
次は、「httpd.conf」ファイル内の以下の記述をコメントインしてください。
LoadModule rewrite_module modules/mod_rewrite.so
これによって後述するスマートURLに対応することができます。
symfonyのフォルダ構造
これまでのインストールによってsymfonyのファイル群が次のとおりに配置されています(PEARが「c:\php\PEAR」にインストールされている場合)。
| フォルダ | 内容 |
| c:\php\PEAR\symfony | メインライブラリ、実行ファイル |
| c:\php\PEAR\data\symfony | アプリケーション用スケルトン |
| c:\php\PEAR\doc\symfony | ドキュメント |
| c:\php\PEAR\test\symfony | 単体テスト |
以上でsymfonyを利用するための準備は完了です。
symfonyで作るWebアプリケーションの構造について
実際にアプリケーションを作成する前に、symfonyで作成するアプリケーションがどのような構造になっているのかをざっと見ておきましょう。
symfonyでは、構築する一つのWebサイト全体を「プロジェクト」と名付けています。そしてその中に、サイトの中で特定の役割を果たす「アプリケーション」が一つ以上存在しています。さらに一つ一つのアプリケーションの中には「モジュール」が存在し、アプリケーションの個々の動作を担っています。図にすると、次のようになります。

例としてプロジェクトにECサイトを想定すると、「商品管理」「商品購入」といったアプリケーションが存在し、さらに「商品購入」アプリケーションには「商品を検索/提示する」「購入手続きをとる」などのモジュールが存在するわけです。
symfonyは、これらプロジェクト構築に必要なモジュールをコードジェネレーターで自動生成することができます。
- 修正履歴
-
- 2006/12/29 15:07 symfony 1.0.0-beta対応に合わせ一部修正を行いました。
この記事は参考になりましたか?
- この記事の著者
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
WINGSプロジェクト 川北 季(カワキタ ミノル)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア

......................................................................