Windows10でSymfony2のローカル開発環境構築②


前回はPHPの環境構築まで記載したのでその続き。
0から環境を構築したい方は以下のリンクへどうぞ。
XAMPPのインストール手順がわからない方向け。

**前回の記事**：[Windows10でSymfony2のローカル開発環境構築①](http://qiita.com/k_moto/items/1d5e63c6f6c3ab485666)


以前現場で使用したPHPのフレームワーク「Symfony」
他のフレームワークと使い比べとかできてないので、
良し悪しの理解はできてないけど好みだった。
忘れないうちに勉強しなおしたいので環境構築しておく。
サーバ側は現場に出たら用意されてることが多いけど、
万が一自分でやるときのための備忘。

今回の記事は大体以下の書籍を参考にしている。
個人的に非常に読みやすかった。
[基本からしっかり学ぶ-Symfony2入門](https://www.amazon.co.jp/%E5%9F%BA%E6%9C%AC%E3%81%8B%E3%82%89%E3%81%97%E3%81%A3%E3%81%8B%E3%82%8A%E5%AD%A6%E3%81%B6-Symfony2%E5%85%A5%E9%96%80-%E5%BE%8C%E8%97%A4-%E7%A7%80%E5%AE%A3/dp/4774178039)

## Symfony2が動作するPHP環境の確認
まずはSymfony2を動かせる環境になっているか確認する。
確認項目は以下。
ただし、前回の記事の手順でXAMPPを入れている場合は、
特に問題はないはず。

1. PHP 5.3.9 以降がインストールされている
1. PHPのJSONサポートが有効
1. PHPのctype関数が有効

###0. PHPコマンドを簡単に使えるようにする

上記を確認する前に、PHPコマンドのパスを通す。
一応XAMPPのコントロールパネルから起動すれば問題ないが、
ちょっと確認したいときとか不便なので設定しておく。
環境変数の設定をする必要があるので若干面倒。

####0-1. システムの詳細設定を開く

「コントロール パネル\システムとセキュリティ\システム」を表示し、
「システムの詳細設定」を押下する。

![01.png](https://qiita-image-store.s3.amazonaws.com/0/64466/b5723266-8118-f47f-b31a-558dd321cf24.png)

####0-2. 環境変数の設定ページを開く

![02.png](https://qiita-image-store.s3.amazonaws.com/0/64466/7584db63-93f1-4adb-8417-53718b8386d4.png)

####0-3. Pathを編集する

システム環境変数からPathを選択し、
「編集」ボタンを押下する。

![03.png](https://qiita-image-store.s3.amazonaws.com/0/64466/7918a875-576e-7387-f190-4bf0fd856093.png)

####0-4. XAMPPのPHPディレクトリを指定する

XAMPPの配下にphpディレクトリが存在するので、
「新規」ボタンを押下し、そこまでのパスを追加し、
OKボタンを押下する。

![05.png](https://qiita-image-store.s3.amazonaws.com/0/64466/9e4249dc-ffbc-2b3a-7449-cd65834dfa98.png)


※xamppのインストール先をデフォルトにしている場合、
「C:\xampp\php」のパスを指定すれば良い。
（念のため確認はすること）

![04.png](https://qiita-image-store.s3.amazonaws.com/0/64466/a1f3e81f-bb51-6eb2-c20e-84d4f16565eb.png)

###1. PHPのバージョンが 5.3.9 以上であることを確かめる

前回紹介したバージョンのXAMPPをインストールしていれば、
Symfony2の対象よりも新しいバージョンのPHPがインストールされているはず。

####1-1. コンソールからコマンドを打ち込む

コンソールを立ち上げて

```

php -v

```

と入力する。

5.3.9 以上であればOK。

###2. PHPのJSONサポートが有効であることを確かめる

前回紹介したバージョンのXAMPPをインストールしていれば、
JSONサポートが有効であるはず。
PHP 5.2.0からjson拡張モジュールが標準で組み込まれている。


####2-1. コンソールからコマンドを打ち込む

コンソールを立ち上げて

```

php -i | find "json"

```

と入力する。

###3. PHPのctype関数が有効

前回紹介したバージョンのXAMPPをインストールしていれば、
ctype関数は有効であるはず。
PHP 4.2.0からデフォルトで有効となった。


####3-1. コンソールからコマンドを打ち込む

コンソールを立ち上げて

```

php -i | find "ctype"

```

と入力する。


##Symfony2 のインストール

XAMPPで動作させるため、
「C:\xampp\htdocs」配下にプロジェクトのディレクトリを配置する。

デモアプリはSymfonyの最新版(3系)がインストールされてしまうようなので、
最初から新規アプリとしてインストールする。


###1. Symfony2のインストールと動作確認の流れ

####1-1. インストーラーのダウンロード・実行

phpコマンドを使用し、インストーラーをダウンロードして実行する。
以下のコマンドを実行する。

```
cd C:\xampp\htdocs
php -r "readfile('http://symfony.com/installer');" > symfony.phar
php symfony.phar
```


以下のようなメッセージが出力されればインストールの準備は完了

```
 Symfony Installer (1.5.8)
 =========================

 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.phar new blog

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

   symfony.phar new blog lts

 Create a project based on a specific Symfony branch:

   symfony.phar new blog 2.8 or symfony.phar new blog 3.0

 Create a project based on a specific Symfony version:

   symfony.phar new blog 2.8.1 or symfony.phar new blog 3.0.1

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

   symfony.phar demo

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

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

   symfony.phar self-update
```

####1-2. Symfonyプロジェクトのインストール

symfony.pharがあるディレクトリに移動し、
以下のコマンドを入力する。


```

php symfony.phar new sample 2.8

```

正常に終了すると
「OK  Symfony 2.8.9 was successfully installed.」
とコンソールに表示される。

※1. ここでは例として、sampleというディレクトリを作成する。
　　 プロジェクトを作成するディレクトリなので、
　　 それにあう名前をつける方が良い。

※2. ローカルにルート証明書がないとインストールできない。
　　 解決のため以下の記事を参考にさせて頂きました。

[Windowsコマンドプロンプトでphp symfony.phar demoしたら、 cURL error 60: SSL certificate problem: unable to get local issuer certificate っていうエラーが出る！ | かみおか日記](http://juku90.com/post-1897/)


####1-3. 動作確認

上記でSymfonyをインストールしたディレクトリに移動し、
以下のコマンドを入力する。


```

php app/check.php

```

正常に動作している場合は以下のように表示される。

```
 [OK]
 Your system is ready to run Symfony projects
```

##終わりに
以上でSymfony2をローカルで動作させるための環境は整った。
次の記事では実際に簡単なWebページを作るまでを記載する。