久しぶりにまっさらな状態からWEBアプリ(PHP7、CakePHP3.4、MySQL5.5)を作っていくので過程をメモ。
かなり個人的な備忘録になりそうだけど紙に書くとすぐ紛失するので・・・

ソースのバージョン管理・リポジトリの作成、CakePHPのインストール&データベース設定など最初の一回しかやらないからよく忘れるポイントメモ。

前提

  • MacOSX El Capitan
  • MAMPの環境が整っている
  • BitbucketのGitでソース管理する
  • PHP7.0.8
  • CakePHP3.4
  • MySQL5.5
  • Composerはインストール済&パスも通してある

CakePHP3.4はPHPは7でも動くみたいなので初PHP7を利用することにしました。
公開サーバーはまだ決まってないけど、候補のさくらインターネットもエックスサーバーもPHP7に対応してるようだったのでとりあえず大丈夫でしょう。

ソース管理用のリポジトリを作成

GitはBitbucketを使用。
リポジトリの扱いに慣れてないので最初にリポジトリを作成&開発環境にクローンしておいて、そこにソースを入れる。
(後述だが、「.git」ファイルがフォルダに入っててComposerインストールでエラーが出たので良い流れではないかも。。)

リポジトリ作成(my_app_name) → クローン

クローンはMAMPの中(/Appllication/MAMP/htdocs/my_app_name)に入れました。

CakePHP3をインストール

昔はソースを落としてきてポンと入れる感じだったけど今はComposerインストールですね。
Composerがない場合は入れる、Composerのパスが通ってない場合はパスを通してターミナルでインストールのコマンドを叩く。

「my_app_name」にCakePHP3をインストールする場合以下。(CakePHP公式の「インストール」を見る方がわかりやすい)

$ cd /Appllication/MAMP/htdocs
$ composer self-update && composer create-project --prefer-dist cakephp/app my_app_name

リポジトリをクローンしてきた場合ここで「ファイルが入ってますよ」ってエラーになってしまった。(不可視ファイル「.git」ファイルが入ってるので)

一旦クローンしてきたフォルダをリネームして、空の「my_app_name」を作ってもう一度コマンドを叩くとインストール開始。
完了を待ち、リネームしていたフォルダに入ってた「.git」ファイルを入る。

インストールしたCakePHPの画面が出ることを確認してインストールは終わり。

「.gitignore」を調整

ソース管理をしているので管理対象外ファイル「.gitignore」の調整を最初にやっておくと良い。

管理対象外が何かは人によるが、もともと入っている「.gitignore」だと必須のファイルorフォルダだが管理対象外になってしまい、他の環境で作業する場合に別途自分で用意しないといけなくなる。これを避けるためにデフォルトファイルorフォルダとしてアップしておくことにした。
tmp、logsはもともとemptyというファイルが入っているので、キャッシュができてしまう前に(できていたら削除して)コミットするとフォルダ構造が登録できる。

.gitignore

#/vendor/*
#/config/app.php
#/tmp/*
#/logs/*

全てコメントアウトしてからコミット&プル、その後少なくとも「tmp」「logs」はコメントを外して管理対象外にしておく。

データベースを作成

MAMPのphpMyAdminでユーザー&データベースを作成。

照合順序「utf8mb4_general_ci」にしておく。
絵文字とか使えるし。

config/app.php の修正

「Datasources」の項目をデータベースの接続設定に合わせて修正。

エンコードは照合順序「utf8mb4_general_ci」の場合

'encoding' => 'utf8mb4'

にする。