今更なんですが意外と負けてないCakePHPのお話

#PHP
writtdden by KashiwakuraKazuki

皆さんこんにちは。柏倉です。

ついに私もコロナにかかってしまいました。
初日と二日目で40度ぐらいまで熱があがり、ずっと頭痛と寒気に襲われて辛かったですねぇ。。
家族全員感染してしまったので、家事をするにも頓服を飲んで無理やり熱を下げてたりしてました。
皆さんも今更ですが、コロナには気を付けてくださいね。
それでは今回はCakePHPについてお話したいと思います。

CakePHPとは

CakePHP(ケイクピーエイチピー)とは、PHPで書かれたオープンソースのWebアプリケーションフレームワークである。
先行するRuby on Railsの概念の多くを取り入れており、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークと言われている。MITライセンスの元でフリーで配布されている。

歴史は古く、2005年3月にさかのぼります。
現在でも人気は根強く、Laraevlの次に人気だそうです。

特徴

・MVC
 → Model、View、Controller
・bake機能
 → bakeは指定したテーブルに対しこれら3つの部品を生成し、そのテーブルへのCRUD機能を持つWebアプリケーションを作成します。
bakeは指定したテーブルに対しこれら3つの部品を生成し、そのテーブルへのCRUD機能を持つWebアプリケーションを作成します。
・日本語のドキュメントが多い
 → CakePHPは日本語でのドキュメントが豊富なため、比較的習得難易度は低いと思われます。

cakePHPで作られているであろうサイト

・ココナラ(https://coconala.com/)
 → スキルの売り買いができる大手のスキルマーケットです。
・paiza転職(https://paiza.jp/career)
 → ITプログラマー・エンジニア転職のpaiza転職サービスです。
・Relux(https://rlx.jp/v)
 → 宿泊予約サイトです。

現行version

現在はCakePHP 5まで出ており、PHP 8.2 (最小は PHP 8.1) 上で動作します。

インストールの方法

現行は5まで出ていますが、まだ出たばかりで情報が定まっていないと思いますのでここではcake4の方法を記述しています。

簡単なインストールの方法としてはComposerを使用することです。
Composerのインストールができていない人はまずComposerのインストールから始めましょう。
cURL がインストールされていたら次のコマンドを実行するのが簡単です。
curl -s https://getcomposer.org/installer | php
Composerのインストールが完了したら、次のコマンドでcake4のスケルトンをインストールすることができます。
php composer.phar create-project --prefer-dist cakephp/app:"4.*" my_app_name
この時composer.jsonとcomposer.lockが生成されますが、とても大事なファイルになりますので、削除したりしないようにしましょう。
composer.jsonとcomposer.lockはどちらもcomposerでインストールするときに使用するもので、中には構築するデータの情報が書き込まれています。
composer installをすると、composer.jsonに書かれた情報を基にパッケージやライブラリがvendorディレクトリ配下にまとめてインストールされます。
この時composer.lockがインストールされた情報を元に構築されます。
composer.lockはパッケージやライブラリのversionなどを合わせるときに重宝します。
composer.lockがディレクトリ内にある場合はcomposer.lockを使用して記述されているversionの情報をもとにパッケージやライブラリをインストールしてくれます。
逆にパッケージやライブラリの情報を最新に更新したいときは「composer update」を実行しましょう。
「composer update」はcomposer.json を元にアップデートし、composer.lock が更新されます。

セットアップが完了すると、 ディレクトリー構成は次のようになります。

/cms
/bin
/config
/logs
/plugins
/src
/tests
/tmp
/vendor
/webroot
.editorconfig
.gitignore
.htaccess
.travis.yml
composer.json
index.php
phpunit.xml.dist
README.md

これでインストールは完了になります。

まとめ

いかがでしたでしょうか?
Laravelが流行っている今ですが、歴史やお手軽さでcakePHPでもいい場合もたくさんあると思います。
ほかにもPHPのフレームワークは沢山ありますが、プロジェクトや会社の規模、学習コストの期間によって最適なフレームワークを選択することが大事だと思います。
phpのフレームワークを活用して快適なプログラミングライフを過ごしましょう!

最後まで読んでくださってありがとうございます。
過去に下記のような記事も投稿していますので、よかったらご覧ください。
VScodeでメモを取るときにMarkdownって使ってますか?
dockerにamazon linux 2023を入れてnginx + php-fpm + Laravel の環境を作ってみた

Favorite