cakephpをcomposerでインストール
環境
準備
下記をインストールしておく
composerでインストール
インストールするプロジェクトのディレクトリにcomposer.jsonを配置
{ "name": "example-app", "require": { "cakephp/cakephp": "2.5.*", "ext-mcrypt": "*" }, "config": { "vendor-dir": "Vendor/" } }
composerをえいっ!
$ composer install
Venderディレクトリ以下にインストールされる。
. ├── Vendor │ ├── autoload.php │ ├── bin │ ├── cakephp │ └── composer ├── composer.json └── composer.lock
bakeコマンドでプロジェクトのスケルトン(骨組み)を自動生成する
$ ./Vendor/bin/cake bake project /hoge/app
projectスケルトンが生成される
. ├── Config ├── Console ├── Controller ├── Lib ├── Locale ├── Model ├── Plugin ├── Test ├── Vendor ├── View ├── composer.json ├── composer.lock ├── index.php ├── tmp └── webroot
各種設定
CAKE_CORE_INCLUDE_PATHが絶対パスになっているので相対パスに変更
一応、webroot/test.phpも同じ修正をする。
$ vi ./webroot/index.php
<?php define( 'CAKE_CORE_INCLUDE_PATH', ROOT . DS . APP_DIR . DS . 'Vendor' . DS . 'cakephp' . DS . 'cakephp' . DS . 'lib' );
composerオートローダーとcakephpのオートローダーが競合するための対応
$ vi ./Config/bootstrap.php
<?php // composerのautoloadを読み込み require APP . 'Vendor/autoload.php'; // CakePHPのオートローダーをいったん削除し、composerより先に評価されるように先頭に追加する spl_autoload_unregister(array('App', 'load')); spl_autoload_register(array('App', 'load'), true, true);
ローカル開発用に
- apacheのvirtualhostの設定
- /etc/hostsの設定
cakephpのページが表示された!
DBの設定
DebugKitプラグインをインストール
composer.jsonに以下を追加
"require": { "cakephp/debug_kit": "2.2.*" },
$ composer update
Plugin/DebugKit/ができる
Config/bootstrap.phpに以下を追加
<?php CakePlugin::loadAll();
参考
http://book.cakephp.org/2.0/en/installation/advanced-installation.html