いまさらですが
ZendFrameworkを利用した開発に入るかも知れないので、Hello world くらいしておこうかと。
インストール
- XAMPP 5.6.31
- Composer 1.5.1
ダウンロード
- ZendFramework-2.4.13
- スケルトン (https://github.com/zendframework/ZendSkeletonApplication)
最新の 3 ではなく、2 を使っているようなので、PHPも5.6台にしておこう。
準備
ZendFramework は D:\xampp\ZendFramework
に解凍。
D:\xampp\php\php.ini にZendFrameworkのライブラリを追加。php\PEAR
より先に記述しないと PEAR のなかに配置された Zend Framework Minimal Package を優先してしまうとのこと。
include_path="D:\xampp\ZendFramework\library;D:\xampp\php\PEAR"
スケルトンアプリケーションをD:\xampp\htdocs\Zend
に配置し .htacces
を作成。
RewriteEngine on
RewriteBase /zend
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
D:\xampp\apache\conf\httpd.conf の設定します。DocumentRootは先程のスケルトンを配置したディレクトリの publicフォルダです。
// コメントを解除(頭の # をとる)
LoadModule rewrite_module modules/mod_rewrite.so
<Directory "/xampp/htdocs">
AllowOverride All
</Directory>
DocumentRoot "D:\xampp\htdocs\Zend\public"
<Directory "D:\xampp\htdocs\Zend\public">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
D:\xampp\htdocs\Zend で composer install
を実行。
Zend が起動したことを確認
http://localhost
を開く
簡単な例を実装
D:\xampp\htdocs\Zend\module\Application\src\Controller\IndexController.php
に helloAction を実装。
class IndexController extends AbstractActionController
{
public function indexAction()
{
return new ViewModel();
}
public function helloAction()
{
$viewModel = new ViewModel();
$viewModel->message = 'Hello, world!';
return $viewModel;
}
}
D:\xampp\htdocs\Zend\module\Application\view\application\index\hello.phtml
を作成する。注記:PHPコードのみからなるファイルでは、終了タグ ("?>") は含みません。
<?php
echo $message;
http://localhost/application/hello
にアクセスし、「Hello, world!」が出ればOK。
以上。