[CakePHP3] CakePHP3の環境をMAMPで構築する!
MacとMAMPで使用しているPHPのバージョンが違うことで、CakePHP3 をインストールする際にエラーが出るようです。
ですので、MacとMAMPの使用しているPHPのバージョンの違いを把握してから、composer, CakePHP3 のインストールを進めていきます。
1. MAMPのPHPのパスを通す
- Mac の PHP のバージョンを確認
このMacに入っているphpのバージョンは
php -v
で確認できる。
- MAMP の PHP のバージョンを確認
MAMP の「設定」から PHP の標準バージョンを確認できます。
私のMAMPの場合は php5.6.10 だったので、下記が MAMP の PHP のパスとなります。
/Applications/MAMP/bin/php/php5.6.10/bin/php
2. composerをインストールする
cakephp3をインストールする場所(今回はcakephp3)に移動して、下記コードを実行する
curl -sS https://getcomposer.org/installer | /Applications/MAMP/bin/php/php5.6.10/bin/php
3. CakePHP3をインストールする
composerをインストールしたら、そのまま下記コードを実行します。
今回は hoge フォルダに CakePHP3 をインストールしてみます。
/Applications/MAMP/bin/php/php5.6.10/bin/php composer.phar create-project --prefer-dist cakephp/app hoge
パーミッションをデフォルトの設定にするかと聞かれたら、Y にしておく。
ちゃんとインストールできていれば、ブラウザで CakePHP の画面を確認できると思います。
4. データベースを接続
まだ、Database が 「CakePHP is able to connect to the database.」
となっていないと思いますので、データベース接続の設定をしましょう。
/cakephp3/hoge/config/app.php の下記箇所を変更します。
- ホスト名
'host' => 'localhost' - DBログインのユーザー名 (例 hoge)
'username' => 'hoge' - DBログインのパスワード (例 hogepass)
'password' => 'hogepass' - データベース名(例 hoge_db)
'database' => 'hoge_db'
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'non_standard_port_number',
'username' => 'hoge',
'password' => 'hogepass',
'database' => 'hoge_db',
'encoding' => 'utf8',
'timezone' => 'UTC',
'flags' => [],
'cacheMetadata' => true,
'log' => false,
Database が 「CakePHP is able to connect to the database.」
となれば DB の接続も完了です!!
CakePHP3 のインストールに苦戦しましたが、この方法でローカル開発環境を構築することができました!!
Author And Source
この問題について([CakePHP3] CakePHP3の環境をMAMPで構築する!), 我々は、より多くの情報をここで見つけました https://qiita.com/beychan/items/f423e325741b7e268f95著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .