CakePHP3、CakePHP4のバージョンを指定してインストールする詳細な手順を解説
2022/03/31
CakePHP3、CakePHP4のバージョンを指定してインストールする方法
CakePHP3、CakePHP4のバージョンを指定してインストールする方法の解説
CakePHP3、CakePHP4のバージョンを指定してインストールする方法の解説です。
CakePHP3、CakePHP4のバージョンを指定してインストールする場合は、下記の様にバージョンを指定してインストールを行います。
(この記事は、CakePHP3の記事として書きましたが、CakePHP4でも同様に動作することを確認しました。「CakePHP3」を「CakePHP4」と読み替えていただいて問題ありません。)
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:3.4.* [my_app_name] 【メンテナンスバージョンまで指定する場合】 composer create-project --prefer-dist cakephp/app:3.4.4 [my_app_name] 【Composerにパスが通っていない場合】 php composer.phar create-project --prefer-dist cakephp/app [my_app_name] |
CakePHP3、CakePHP4のバージョンを指定してインストールする必要がある場面
CakePHP3で会員管理システムの開発を行う機会がありました。
その際、CakePHP3で会員管理システムと言えば、CakeDCが提供するプラグイン「CakeDC/Usersプラグイン」がありますので、この「CakeDC/Usersプラグイン」を使って会員管理システムを構築しようと思いました。
ですが、「CakeDC/Usersプラグイン」は CakeDCが作っているとはいえ、CakePHP3のバージョンアップと同時にバージョンアップはしていきませんので、CakePHP3の最新版をインストールした場合は、「CakeDC/Usersプラグイン」が使えない、という状況になることが多々あります。
その場合、「CakeDC/Usersプラグイン」が最新バージョンに対応するまで待つという方法もありますが、一般的には「CakeDC/Usersプラグイン」が対応している CakePHP3のバージョンに合わせてインストールをする、という選択をするでしょう。
そんなわけで、CakePHP3のバージョンを指定してインストールする方法が必要になったわけです。
その他にも、本番で稼働しているサイトの開発環境を構築するため、本番と同じバージョンの CakePHP3をインストールする、という場合などにも必要になってくるでしょう。
CakePHP3、CakePHP4のインストール手順
最初に CakePHP3、CakePHP4のバージョンを指定してインストールする方法を解説しましたが、CakePHP3、CakePHP4をインストールする方法について、改めて書いておきます。
CakePHP3公式サイト インストール
https://book.cakephp.org/3.0/ja/installation.html
CakePHP3公式サイト インストール
https://book.cakephp.org/4/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」に関する記事一覧
CakePHPのFlashエラーは出るが入力項目ごとのメッセージが出ないエラーの原因
CakePHP4のフラッシュメッセージの表示場所、デザインを変更する方法を解説
CakePHPで同一テーブル内の値を比較する条件でレコードを取得する方法
国際化と地域化の翻訳機能「__()」を使って定数に変数を埋め込む方法
CakePHP4で現在処理しているコントローラー名、アクション名を取得する方法
CakePHP4のCakeDC/Usersの Usersへの接続、バリデーションのカスタマイズ方法解説
CakePHP4のCakeDC/Usersの Usersへの接続、バリデーションのカスタマイズ方法解説
CakePHP4のメッセージ日本語化の設定(国際化と地域化の機能の使い方の解説)
CakePHP4で公開側と管理側のデザインテンプレートを分ける方法・setLayout()
CakePHP4でcontrollerで実行したバリデーションエラーをmodelのにマージする方法
その他の「CakePHP4」に関する記事一覧
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
CakePHP3のインストールでURL rewriting……のエラーが!その解決方法解説
CakePHP3をインストールしたら URL rewriting is not properly configured.のエラーが。原因は.htaccessが有効になっていないこと。httpd.confに設定を追加すればOK。
-
CakePHP4のCakeDC/Usersの Usersへの接続、バリデーションのカスタマイズ方法解説
CakeDC謹製Usersプラグインの紹介。CakePHP4で使う場合のUsersのカスタマイズとして入力項目のバリデーションの変更を、プラグインのファイルは触らずオーバーライドにより実装する方法を解説する。
-
CakePHP2の検索Plugin CakeDC/Searchで重複を省くgroup by(distinct)の実装方法
CakePHP2の検索プラグイン「CakeDC/Search」で、重複レコードを省くgroup by、distinctを使う方法についての解説。設定する場所はpaginatorの条件とするので、find()関数と同じ。
-
CakePHP3にOGPをfetch、asignを利用してテンプレートごとに指定する方法を解説
CakePHP3でOGPを設定する方法を解説。fetch、assignを使用しレイアウトファイルに編集した変数にテンプレートファイルから値を指定する。これを利用してOGPを編集する。
-
CakePHP3でkeywords、DescriptionをHTMLヘルパーを使って設定する
CakePHP3のkeywordsとdescriptionを設定する方法の解説。CakePHP3にはmetaタグを編集するHTMLヘルパーが用意されているためそれを利用すればOK!ポイントはブロック化を有効にすること。
-
CakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介
CakePHP3でレコードを追加、更新(Insert、Update)する記述方法を解説。1件ずつ処理、全件をまとめて処理、条件に該当する複数件のレコードを処理方法をサンプルコードを用いて解説。
-
CakePHP3にデザインテンプレートBootstrapを導入する方法・friendsofcake/bootstrap-ui使用
CakePHP3にプラグイン「friendsofcake/bootstrap-ui」、デザインテンプレート「Bootstrap」を設置する手順を解説。Bootstrapの簡単な使い方やデフォルトのデザインとの混在方法なども解説。
-
CakePHP3のタイムゾーンを協定世界時UTCから日本標準時間JSTにずれを変更する方法
CakePHP3の標準設定のタイムゾーンは「UTC(協定世界時)」に設定されている。これを日本標準時に変更する方法(app.php、bootstrap.phpの変更方法)の解説。
-
CakePHP3で画像・ファイルのアップロード処理を自作・解説付き・その2
ファイルのアップロード機能の自作サンプルコードとその解説のその2。アップロード機能に関連するファイルの更新や削除の処理や画像、フォルダのパスの指定方法などを含めて解説。
-
CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。
CakePHP3でajaxを利用する処理の実装方法を解説。プルダウンを変更するとデータベースの値を取得し検索結果の内容を変更するというような処理を想定。CakePHP3.6以降の CSRF対策対応済。