ユアマイスター株式会社エンジニアブログ

ユアマイスター株式会社のエンジニアが日々徒然。

CakePHPのいいところ、気をつけること

こんにちは!ユアマイスターエンジニアチームの高崎です。 今日は弊社で採用しているPHPフレームワークCakePHP」について書いてみようと思います。

cakephp.org

CakePHPとは?

もうここであらためて書くのもはばかられるぐらい、スタンダードな超有名PHPフレームワークです。 ケーキではなく「ケーク」と読みます。 2008年頃から使われ出したフレームワークで、当時すでに大いに話題になっていたRuby on Railsの思想を多く取り入れており、その特徴的な部分を多く受け継いでいます。

どこがいいの?

Ruby on Railsを触ったことがある人はご存知かもしれませんが、こちらもその特徴を受け継いでいるだけあってとにかく開発スピードが早いです。 シンプルな仕様であれば、ひな形の時点ですでにほぼ完成に近いものがそろいますし、Ruby on Railsの特徴的な機能の一つでもあるDBへのアクセスを簡単に書くことができるActiveRecordも、しっかりと概念を取り入れたものが実装されています。これはルールが少し独特な部分がありますが、それにのっとって書くことで、通常のアプリで使用するようなCRUD操作を簡単に記述することができます。

気をつけること

このように、とてもいいところの多いフレームワークなのですが、気をつけなければいけないところもあります。

通常CakePHPを使って開発を行う場合、フレームワークのコア部分はGit等での共有を行わず、サーバーやローカルなど個々の環境にインストールしておく構成をとるのが一般的だと思います。

弊社でもそのような構成を採用しているのですが、ローカルとサーバーのCakePHPのバージョンの微妙なずれが原因で、ローカルで生成した雛形で呼ばれているメソッドがサーバー上のCakePHPで動かず、ローカルでテストを通過したコードがサーバー上で動かないということがありました。 そのバージョンの差異がとても微妙なものだったため、強く記憶に残っています。

CakePHPが開発されてもう10年近くたつんですが、いまだに人気で開発のペースも早く、機能の見直しも積極的に行われているため、まれにこのようなことに遭遇するようです。 ある意味人気があることの裏返しでもあるのですが、使用される際は気をつけることをおすすめします。