CakePHP3、CakePHP4、CakePHP5のバージョンを指定してインストールする詳細な手順を解説
2024/06/21
CakePHP3、CakePHP4、CakePHP5のバージョンを指定してインストールする方法
CakePHP3、CakePHP4のバージョンを指定してインストールする方法の解説
CakePHP3、CakePHP4のバージョンを指定してインストールする方法の解説です。
CakePHP3、CakePHP4のバージョンを指定してインストールする場合は、下記の様にバージョンを指定してインストールを行います。
(この記事は、CakePHP3の記事として書きましたが、CakePHP4、CakePHP5でも同様に動作することを確認しました。「CakePHP3」を「CakePHP4」「CakePHP5」と読み替えていただいて問題ありません。)
1 2 3 4 5 6 7 8 9 10 11 |
【最新版をインストールする場合】 composer create-project --prefer-dist cakephp/app [my_app_name] 【マイナーバージョンを指定する場合】 composer create-project --prefer-dist cakephp/app:4.4.* [my_app_name] 【メンテナンスバージョンまで指定する場合】 composer create-project --prefer-dist cakephp/app:4.5.4 [my_app_name] 【Composerにパスが通っていない場合】 php composer.phar create-project --prefer-dist cakephp/app [my_app_name] |
CakePHP3、CakePHP4、CakePHP5のバージョンを指定してインストールする必要がある場面
CakePHP3で会員管理システムの開発を行う機会がありました。
その際、CakePHP3で会員管理システムと言えば、CakeDCが提供するプラグイン「CakeDC/Usersプラグイン」がありますので、この「CakeDC/Usersプラグイン」を使って会員管理システムを構築しようと思いました。
ですが、「CakeDC/Usersプラグイン」は CakeDCが作っているとはいえ、CakePHP3のバージョンアップと同時にバージョンアップはしていきませんので、CakePHP3の最新版をインストールした場合は、「CakeDC/Usersプラグイン」が使えない、という状況になることが多々あります。
その場合、「CakeDC/Usersプラグイン」が最新バージョンに対応するまで待つという方法もありますが、一般的には「CakeDC/Usersプラグイン」が対応している CakePHP3のバージョンに合わせてインストールをする、という選択をするでしょう。
そんなわけで、CakePHP3のバージョンを指定してインストールする方法が必要になったわけです。
その他にも、本番で稼働しているサイトの開発環境を構築するため、本番と同じバージョンの CakePHP3をインストールする、という場合などにも必要になってくるでしょう。
ちなみに、現在の CakePHPのバージョンを調べる方法は下記に記事を書きましたので、併せて参考にしてください。
CakePHP2、CakePHP3、CakePHP4、CakePHP5のバージョンを調べる 2つの方法
CakePHP3、CakePHP4、CakePHP5のインストール手順
最初に CakePHP3、CakePHP4のバージョンを指定してインストールする方法を解説しましたが、CakePHP3、CakePHP4をインストールする方法について、改めて書いておきます。
CakePHP3公式サイト インストール
https://book.cakephp.org/3.0/ja/installation.html
CakePHP4公式サイト インストール
https://book.cakephp.org/4/ja/installation.html
CakePHP5公式サイト インストール
https://book.cakephp.org/5/ja/installation.html
Composerのインストール
CakePHP3、CakePHP4は、Composerを使ってインストールを行います。
そのため、Composerをインストールする必要があります。
Composerは、PHPのパッケージ管理システムで、ライブラリなどのパッケージをインストールする際に、コマンド一つで関連するパッケージも含めてインストールしてくれるシステムです。
Composerをインストールする方法については、下記のサイトなどが参考になるかと思います。
https://weblabo.oscasierra.net/php-composer-windows-install/
https://qiita.com/ozawan/items/caf6e7ddec7c6b31f01e
CakePHP3、CakePHP4を Composerを使ってインストール
前項でインストールした Composerを使って、CakePHP3、CakePHP4をインストールします。
インストールする際に使用するコマンドは、最初に解説した下記になります。
1 |
composer create-project --prefer-dist cakephp/app [my_app_name] |
「[my_app_name]」は、作成するサイトのフォルダ名になります。
コマンドを実行したフォルダの中に「[my_app_name]」のフォルダ名でフォルダが作成され、その中に CakePHP3がインストールされます。
実行中に、下記の質問をされますので、通所は「Y」を入力しておきましょう。
1 |
Set Folder Permissions ? (Default to Y) [Y,n]? y |
インストールには数分程度かかりますが、待つだけでインストールが完了します。
動作確認
インストールが完了したら動作確認を行います。
不具合がある場合や、違うバージョンをインストールし直す場合などで、インストールした CakePHP3、CakePHP4を削除したい場合は、フォルダごと削除すれば OKです。
データベースの接続
Composerを使ってインストールするようになりましたので、CakePHP3、CakePHP4を使うために必要なのセットアップの大半は自動化されて、ほぼ何もせずに利用することができます。
一つだけ対応する必要がありますが、それはデータベースへの接続情報の設定です。
CakePHP3系のデータベースの設定情報は、
/config/app.php
にあります。
この「app.php」の 220行目辺りからがデータベースの設定情報です。
CakePHP4系のデータベースの設定情報は、
/config/app_local.php
にあります。
この「app_local.php」の 37行目辺りからがデータベースの設定情報です。
設定する内容は下記の情報で、設定する情報は CakePHP3でも CakePHP4でも違いはありません。
1 2 3 4 5 |
'host' => 'localhost', 'port' => '3306', 'username' => 'root', 'password' => 'pass', 'database' => 'cake3', |
ちなみに、ポート番号の指定は、「port」に値を指定せずに、下記の様に「host」に指定してしまうことも可能です。
1 |
'host' => 'localhost:3306', |
CakePHP3のシステム要件
最後に CakePHP3を利用するためのシステム要件も記載しておきます。
- HTTP サーバー。例: Apache。mod_rewrite が推奨されますが、必須ではありません。
- PHP 5.6.0 以上(PHP 7.1 も含む)
- mbstring PHP 拡張
- intl PHP 拡張
- simplexml PHP 拡張
公式サイトにも書いてありますが、Webサーバは Apacheだけでなく、nginxや lighttpd、Microsoft IISでも動作します。
また、XAMPPでも動作します。
データベースは必須ではありませんが、使う場合は下記の条件を満たすものが求められます。
- MySQL(5.1.10 以上)
- PostgreSQL
- Microsoft SQL Server(2008 以上)
- SQLite 3
CakePHP4のシステム要件
最後に CakePHP4を利用するためのシステム要件も記載しておきます。
- HTTP サーバー。例: Apache。mod_rewrite が推奨されますが、必須ではありません。
- PHP 7.2 以上(PHP 8.1 も含む)
- mbstring PHP 拡張
- intl PHP 拡張
- simplexml PHP 拡張
- PDO PHP 拡張
公式サイトにも書いてありますが、Webサーバは Apacheだけでなく、nginxや lighttpd、Microsoft IISでも動作します。
また、XAMPPでも動作します。
データベースは必須ではありませんが、使う場合は下記の条件を満たすものが求められます。
- MySQL(5.6 以上)
- MariaDB(5.6 以上)
- PostgreSQL(9.4 以上)
- Microsoft SQL Server(2012 以上)
- SQLite 3
「組み込みのドライバーは全て PDO を必要とします。」と言うことですので、「PDO PHP拡張モジュール」をインストールする必要があるようです。
CakePHP3の関連記事
CakePHP4のCSS、JavaScript、画像のブラウザへのキャッシュをコントロールするCakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介
CakePHP3でモデルなしフォームからCSVをアップロードしレコードを更新する方法解説
CakePHP3でPHP Simple HTML DOM Parserを使ってスクレイピングする方法
CakePHP3のInsert On Duplicate Key Update(upsert)構文を解説・バルク処理も
CakePHP3の1対多での連携を中間テーブルを使った多対多の連携に変更するときの手順
CakePHP3でデフォルトのソート条件を設定してユーザの選択肢たソート条件を有効にする方法
CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。
CakePHP3でパンくずの指定は HTMLヘルパーを使って指定する方法を解説
CakePHP3にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説
その他の「CakePHP3」に関する記事一覧
CakePHP4系でJSONレスポンスの処理ではwithStringBodyを使う。3との違い解説
CakePHP4、CakePHP5の「warning: DebugKit is disabling...」の対処方法
MySQL+CakePHPのdate型、datetime型項目は「2999-12-31」までしか扱えない
CakePHP4のFrozenDateで1ヵ月前、先月、今月1日、来月末の日付などを算出する方法
CakePHP4のcake cache clear_allでPermission deniedはパーミッションの変更が必要
CakePHP4のクリエビルダーを使用してOR条件をAND条件でつなぐSQL文を作る方法
CakePHP4のController内でViewテンプレート、レイアウトの変更設定を記述する方法
CakePHP4から外部のデータベースにアクセスする方法解説
CakePHP4の数値項目は「like %10%」の部分一致検索(find select)はできない
CakePHP4でロギングスコープやログレベルを使用してログを出し分ける方法を解説
その他の「CakePHP4」に関する記事一覧
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
CakePHP 2.3 Search Pluginで検索処理 その7queryを使って 日付の範囲検索
CakePHPの検索プラグイン Search Pluginの検索処理の中で queryを使って日付の範囲検索の方法です。
-
-
CakePHP4、5でSELECT telephone as tel FROM usersの様にasでカラムに別名を付ける方法
CakePHP4、CakePHP5でクリエビルダーを利用してテーブルからレコードを取得する際、asを使用してカラムの別名で値を取得したい場合の対応方法を解説。また、別名にはハイフンやアスタリスクなど使用できない文字がある点も解説。
-
-
CakePHP3ログファイルへの出力・$this->log()、独自ログへの出力方法の解説
コントロール、モデルの変数の中身を見るときはログに出力する方法が有効です。$this->log()を利用すると変数だけじゃなく、連想配列、オブジェクトも簡単にログ出力ができます。
-
-
CakePHP3のインストールでURL rewriting……のエラーが!その解決方法解説
CakePHP3をインストールしたら URL rewriting is not properly configured.のエラーが。原因は.htaccessが有効になっていないこと。httpd.confに設定を追加すればOK。
-
-
CakePHP 2.3でファイルのアップロード処理を作る
CakePHPでプラグインを使わないファイルアップロード処理を解説します。簡単です。DBにファイルを格納する方法も。
-
-
CakePHP3でデフォルトのソート条件を設定してユーザの選択肢たソート条件を有効にする方法
CakePHP3でデフォルトのソート条件を設定しつつ画面上でユーザがソート条件を選択したときもソート処理を実行させる方法を解説。ソート条件はページネーションの処理として実装。
-
-
CakePHP3でモデルなしフォームからCSVをアップロードしレコードを更新する方法解説
CakePHP3でCSVファイルをアップロードしレコードを追加、更新する処理の作成方法の解説。モデルとは直接関連しないフォームからCSVファイルをアップロードするため汎用的に使用可能。
-
-
CakePHP3のHtmlHelperのLink設定のまとめ。mailto、URL、Root/Homeのリンクなども
CakePHP3でHtmlHelperを使ってリンクの設定をする方法のまとめ。基本形からURLを指定、class、id、targetを指定、mailtoのリンク、画像をアンカーに、JavaScriptのダイアログなどの解説。
-
-
CakePHP3で生の SQLの実行はConnectionManagerを使う
CakePHP3で生の SQL文を実行する方法を解説。クリエビルダーを使う場合は TableRegistryを利用するが、SQLを実行する場合は ConnectionManagerを使う。プリペアードステートメントの使用方法も解説。
-
-
CakePHP3のInsert On Duplicate Key Update(upsert)構文を解説・バルク処理も
CakePHP3で Insert … On Duplicate Key Update構文(upsert)を実行する方法を解説。バルク処理の方法も用意されているため大量処理の場合も対応可能。