symfony_header

PHPのフレームワークというとCake PHPしか触ったことが無かったのですが、Symfony及びSymfony2の様々な採用事例を見るにやっておかねばと思った次第です。

とりあえず手元の環境でやってみよう、という事でWindows + xamppの環境にSymfony2をインストールするところから進めていこうと思います。

xamppのインストールについては省きますが、xampp環境の無い方はこちらから最新のものをダウンロードしてインストーラーに従って進めれば問題無いでしょう。

さて、情報が何も無いのでとりあえずインストールの必要があるだろうと公式サイトのダウンロードページに行ってみることにしました。

Symfony 2.7というのが最新バージョンのようです。
「まずはSymfonyインストーラーをインストールして、その後このコマンドを実行しなさい」と言われているので「install the Symfony Installer.」をクリック。

なにやら色々出てきました。
Windows環境にインストールしたいので「Installation on  Windows」の項目を見てみましょう。
symfony.comからインストーラーをダウンロードするコマンドですね。
折角xamppがあるのでコマンドプロンプトではなく、xamppのコントロールパネルからShellを起動してみましょう。

試しに「php -v」と打ってphpへのパスが通っている事を確認します。

# php -v
PHP 5.5.15 (cli) (built: Jul 23 2014 15:05:09)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies

PHPのバージョンが表示されたので大丈夫ですね。
次にインストーラーのダウンロード先を決めましょう。
と、その前に気になる一文があります。

Move the downloaded file to your projects directory and execute it as php symfony.

どうやらダウンロードしたファイルをプロジェクトフォルダに移動してコマンドを叩けという事のようです。
今回はc:/xampp/htdocs/にsymfony_testというディレクトリを作成しここにダウンロードします。
それではsymfony_testディレクトリに移動してコマンドを実行してみましょう。

user@PC c:\xampp\htdocs\symfony_test
# php -r "readfile('http://symfony.com/installer');" > symfony

無事symfony_testディレクトリにsymfonyという名前のファイルがダウンロードされました。
次はphp symfonyの実行です。

user@PC c:\xampp\htdocs\symfony_test
# php symfony

 Symfony Installer (1.1.7)
 =========================

 This is the official installer to start new projects based on the
 Symfony full-stack framework.

 To create a new project called blog in the current directory using
 the latest stable version of Symfony, execute the following command:

   symfony new blog

 Create a project based on the Symfony Long Term Support version (LTS):

   symfony new blog lts

 Create a project based on a specific Symfony branch:

   symfony new blog 2.3

 Create a project based on a specific Symfony version:

   symfony new blog 2.5.6

 Create a demo application to learn how a Symfony application works:

   symfony demo

 Updating the Symfony Installer
 ------------------------------

 New versions of the Symfony Installer are released regularly. To update your
 installer version, execute the following command:

   symfony self-update

インストーラーの説明文と新しいプロジェクトの開始方法やインストーラーのアップデート方法が記載されているようです。
今回は初めてのSymfonyなので一番下のデモアプリケーションを作成してみましょう。
何せ右も左も分からない状態ですのでデモアプリケーションを通してSymfonyを学んで行きたい所存です。

# php symfony demo

-- 省略 --
    6.16 MB/6.17 MB ===========================================================>   99%
    6.17 MB/6.17 MB ============================================================  100%

 Preparing project...

 OK  Symfony Demo Application was successfully installed. Now you can:

    1. Change your current directory to C:\xampp\htdocs\symfony_test\symfony_demo

    2. Execute the php app/console server:run command to run the demo application.

    3. Browse to the http://localhost:8000 URL to see the demo application in action.

デモを構成するファイルがダウンロードされ、インストールの成功と確認手順が表示されました。
カレントディレクトリの変更はVirtual Hostで行います。
c:\xammpp\apache\conf\extra\httpd-vhosts.conf に設定情報を追記しましょう。

<VirtualHost *:80>
	DocumentRoot "C:/xampp/htdocs/symfony_test/symfony_demo/web/"
	ServerName symfony_demo.localhost
</VirtualHost>
<Directory "C:/xampp/htdocs/symfony_test/symfony_demo/web/">
	order deny,allow
	allow from ALL
</Directory>

Windowsのhostsファイル(C:\Winidows\System32\drivers\etc\hosts)にも追記します。
※管理者権限が必要ですのでご注意ください

xamppのコントロールパネルからApacheの再起動を行い、Webブラウザから http://symfony_demo.localhost にアクセスすると・・・。

無事デモアプリケーションが表示されました。

といったところで今回はここまで。

次回、があればデモを通じてSymfony2を勉強していく様子をご紹介したいと思います。
もしかしたらデモをすっ飛ばしてしまうかもしれませんが・・・。