PHPのフレームワークも数が色々と出て、混迷を深めています。 一体どれを選べばいいのか? 個人的には「Zend Framework」をお薦めします。 本日は、「Zend Framework のインストール」についてです。
こんにちは。猫ITソリューションズ広報の齊藤メイ(♀)です。 本日は、「Zend Framework のインストール」についてです。Zend Frameworkを猫ITソリューションズが使う理由としてはいくつかあるのですが、
- 無理にオブジェクト指向で組まず、単純なライブラリとして使うことも出来る。
- MVCモデルが分かりやすく習得できる。
- ドキュメントが豊富
私も現在勉強中ですが、ZendFramework入門はとても分かりやすく書かれています。 PHPによるオブジェクト指向プログラミングについては一番分かりやすく解説されていると思いました。
以下のサイトを参考にさせていただきました。 貴重な情報に感謝いたします。
Zend Framework入門(1):フレームワークの全体像とインストール(2/3):CodeZine
移動
1 |
# cd /usr/local/src |
公式サイトからダウンロード&解凍
1 2 |
# wget http://framework.zend.com/releases/ZendFramework-1.9.1/ZendFramework-1.9.1.tar.gz # tar -zxvf ZendFramework-1.9.1.tar.gz |
Zend Framework本体は解凍したディレクトリ内の library ディレクトリなので、 libraryディレクトリだけ移動させればいいらしいが、自分のwebサーバー環境では移動先はドキュメントルートの一つ上なので、全部移動させる。 ちなみに当サイトのwebサーバー環境は以下の通り。
1 2 3 4 5 6 7 |
/website /waku2traffics_test /public_html ドキュメントルート(テストサイト) /pcedb2 ZendFramework対象ディレクトリ /waku2traffics_www /public_html ドキュメントルート(本番サイト) /ZendFramework ← テスト・本番両方から使えるようにココに配置 |
移動
1 |
# mv /usr/local/src/ZendFramework-1.9.1 /website/ZendFramework |
php.iniの編集
その1、php.iniにZendFrameworkへのパスを通すその2、Zend_Dbを使うためにPDOドライバ使用の記述を追記する。
※現在のinclude_path + Zend Frameworkへのパスとなる。現在のinclude_pathは事前にphpinfo等で調べておくこと。ちなみにデフォルト(指定なし)だと、
.:/usr/share/pear:/usr/share/php
となっている。
.:/usr/share/pear:/usr/share/php
となっている。
1 2 3 4 5 |
# vi /etc/php.ini 以下追記 include_path = ".:/usr/share/pear:/usr/share/php:/website/ZendFramework/library" extension=php_pdo.dll extension=php_pdo_mysql.dll |
httpd.conf内のmod_rewriteを有効にする。
1 2 3 4 |
# vi /etc/httpd/conf/httpd.conf # LoadModule rewrite_module modules/mod_rewrite.so ↓ LoadModule rewrite_module modules/mod_rewrite.so |
.htaccessファイルを配置。
※httpd.confでもいいが、猫ITソリューションズの環境だと今は.htaccessにしておきたいための措置。.htaccessが有効になっているか必ず調べること。AllowOverride Allとする。
1 2 3 4 5 6 7 8 9 10 |
# vi /website/waku2traffics_test/pcedb2/.htaccess # # ZendFramework rewrite engine set # RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] |
確認
以下のテストプログラムを配置※Zend Frameworkではそのコーディング規約によりPHPコードのみのファイルは末尾の「?>」を入れない。入れてしまうと、ファイルの最後にある空白文字が出力に影響する恐れがあるため。
1 2 3 |
<?php require_once 'Zend/Version.php'; //ライブラリの読み込み echo Zend_Version::VERSION; //現在のZend Frameworkのバージョンを表示 |
ブラウザからアクセスしてみる。
ZendFrameworkバージョンが表示される。
1 |
1.9.1 |