【入門】PHPフレームワーク「CakePHP3」をインストールする。
- 公開日
- 更新日
- カテゴリ:CakePHP
- タグ:PHP,install,Beginner,CakePHP,3.5

日本ではまだまだシェアの高い PHP フレームワークである「CakePHP3 」の導入を行っていきます。
Contents
検証環境
- linux CentOS 7
- Apache 2.4
- PHP 7.1
- MySQL 5.7
CakePHP とは
[公式]CakePHP
https://cakephp.org/jp
CakePHP(ケイクピーエイチピー)は、Web アプリケーションをよりシンプルに、より速く、少ないコードで構築することを可能にします。 近代的な PHP 7 フレームワークは、柔軟性のあるデータベースアクセス層と強力な足場システムを提供し、小型システムと複雑なシステムの両方をよりシンプルに、より簡単に、そしてより巧妙に構築できます。 迅速に構築し、CakePHP で堅実に成長してください。
とまあ、公式からの抜粋を和訳してみたら説明になっていませんでしたが、個人的な見解から説明すると、CakePHP は PHP フレームワークとして必要な機能は大抵持っているので、機能面での心配はまずありません。
Laravel など他の PHP フレームワークと違うところは、CakePHP なりの規則が多い事です。
WEB アプリケーション構築時のルールが多く、Laravel に比べると多少自由を削がれている感じではありますが、結果、それに従って構築していく事によって、誰が書いても同じような構成・コードで出来上がるよ。という感じになっています。
日本でシェアがあるのもわかるなあって感じですが、開発しているのが「cake ソフトウェア財団」というところで、アメリカにあるんですね。
とはいえ公式リファレンスが充実しており、Cookbook や API リファレンスと合わせる事で結構な情報量になるので、採用するには心強い PHP フレームワークの1つです。
CakePHP3 を動かすのに必要なもの
インストールを行う前に、自身の環境が要件を満たしているかを確認する必要があります。
CakePHP3 をインストールするのに必要な環境は以下になります。
- PHP 5.6.0 以上
- PHP 拡張モジュール
- mbstring
- intl
- simplexml
- Composer
- MySQL 5.1.10 以上
確認と環境構築
ここからは、CakePHP3 のシステム要件を満たす為の確認と各ミドルウェアの導入を行います。
PHP バージョン確認
PHP のバージョンを確認します。以下のコマンドを叩きます。
# PHP のバージョンが 5.6 以上であるか確認する
php -v
# 実行結果
[demo@localhost ~]# php -v
PHP 7.1.11 (cli) (built: Oct 25 2017 10:24:28) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.1.11, Copyright (c) 1999-2017, by Zend Technologies
with Xdebug v2.5.5, Copyright (c) 2002-2017, by Derick Rethans
PHP にのバージョンが 5.6.0 以上であれば OK です。それ以下の場合は、5.6.0 以上の PHP に入れ替える必要があります。
PHP 拡張モジュールの確認
CekePHP の稼働に必要な PHP 拡張モジュールが全て導入されているか確認します。以下のコマンドを叩きます。
# 必要な PHP 拡張モジュールが導入されているか確認する
php -m | grep -e intl -e mbstring -e SimpleXML
# 実行結果
[demo@localhost ~]# php -m | grep -e intl -e mbstring -e SimpleXML
intl
mbstring
SimpleXML
「intl 」「mbstring 」「SimpleXML 」が表示されれば OK です。
SimpleXML に関しては、PHP を導入時点でデフォルトで有効になっていますが、その他2つについては手動で導入が必要な場合があります。
Composer の確認
Composer が導入されているか確認します。以下のコマンドを叩きます。
# Composer が入っているか確認する
composer -v
# 実行結果
[demo@localhost ~]# composer -v
-bash: composer: command not found
上記のような結果の場合、Composer が入っていないので、インストールします。
# Composer をインストールする
yum -y install composer
インストール完了後、再度バージョン確認のコマンドを叩き、バージョンが表示されれば導入完了です。
CakePHP3 のインストール
準備が整ったので、CakePHP3 のインストールを行います。
プロジェクトルートへ移動し、Composer コマンドを叩いて CakePHP プロジェクトを作成します。
# CakePHP ルートディレクトリへ移動
cd /path/to/cakephp
# 書式
composer create-project --prefer-dist cakephp/app [作成する場所]
# CakePHP をインストールする
composer create-project --prefer-dist cakephp/app ./
インストールが完了したら、tmp ディレクトリと logs ディレクトリのユーザーを apache へ変更します。
# tmp ディレクトリと logs ディレクトリのユーザを変更する
chown apache:apache tmp logs
最後に、bake コマンドを使うために実行権限を付与します。
# CakePHP ルートディレクトリへ移動
cd /path/to/cakephp
# bin/cake に実行権限を付与する
chmod +x bin/cake
これで導入作業は完了です。
[demo@localhost cakephp]# ll
total 104
drwxr-xr-x. 2 nobody nobody 47 Sep 22 06:31 bin
-rw-r--r--. 1 nobody nobody 2016 Sep 22 06:31 composer.json
-rw-r--r--. 1 nobody nobody 76288 Sep 22 06:31 composer.lock
drwxr-xr-x. 3 nobody nobody 4096 Sep 22 06:31 config
-rw-r--r--. 1 nobody nobody 649 Sep 22 06:31 index.php
drwxr-xrwx. 2 apache apache 18 Sep 22 06:31 logs
-rw-r--r--. 1 nobody nobody 1202 Sep 22 06:31 phpunit.xml.dist
drwxr-xr-x. 2 nobody nobody 18 Sep 22 06:31 plugins
-rw-r--r--. 1 nobody nobody 1663 Sep 22 06:31 README.md
drwxr-xr-x. 8 nobody nobody 4096 Sep 22 06:31 src
drwxr-xr-x. 4 nobody nobody 55 Sep 22 06:31 tests
drwxr-xrwx. 5 apache apache 45 Sep 22 06:31 tmp
drwxr-xr-x. 22 nobody nobody 4096 Sep 22 06:31 vendor
drwxr-xr-x. 6 nobody nobody 96 Sep 22 06:31 webroot
実際にブラウザからアクセスし、以下のような画面が表示されればインストール完了です。