RitoLabo

【入門】PHPフレームワーク「CakePHP3」をインストールする。

  • 公開:
  • 更新:
  • カテゴリ: PHP CakePHP
  • タグ: PHP,install,Beginner,CakePHP,3.5

日本ではまだまだシェアの高いPHPフレームワークである「CakePHP3」の導入を行っていきます。

アジェンダ
  1. 検証環境
  2. CakePHPとは
  3. CakePHP3を動かすのに必要なもの
  4. 確認と環境構築
    1. PHPバージョン確認
    2. PHP拡張モジュールの確認
    3. Composerの確認
  5. CakePHP3のインストール

検証環境

  • 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

インストール完了後、再度バージョン確認のコマンドを叩き、バージョンが表示されれば導入完了です。

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

実際にブラウザからアクセスし、以下のような画面が表示されればインストール完了です。

CakePHP3初期画面

next:【入門】CakePHP3をインストール後に行っておくべき初期設定