エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CakePHPを学ぶ際にはオブジェクト指向を学ぼう

      2014/04/10

CakePHPはオブジェクト指向でできているのでオブジェクト指向を学ぼう

 

PHPのオブジェクト指向を学ぶためのサイト

 
私は、オブジェクト指向の言語を使ったことがなかったために、オブジェクト指向の仕組みについてほとんど理解がありませんでしたが、下記のサイトを見つけた時に、やはり一度オブジェクト指向についても勉強をしておく必要があるな、と思えました。
 http://www.objective-php.net/basic/
 
何せ PHP自体がオブジェクトの考え方をより強く取り込むようになってきていることや、CakePHPが MVCアーキテクチャを使っていて、オブジェクト指向の考え方の理解なしに CakePHPの本質を理解することができないからです。
 
また、上記のサイトは、丁寧にオブジェクト指向の考え方を説明してくれていて、非常に分かりやすく、すんなりと頭の中に入ってきてくれました。
 
このサイトで勉強したおかげで、そもそもの話として、関数とオブジェクトの違いを理解できましたし、クラスに対してデータのやり取りをする際に記述する「$this-> name」の意味とかも理解できて、これから CakePHPを理解していくスピードも速くなっていけると思いました。
 
 
また、このオブジェクトに関して勉強したことで、これまでよく分からなかった「クラス」ってこういう意味だったのか。関数とはこういうところが違ったのか。ということが理解できました。
インスタンス、コンストラクタ、アクセス修飾子....そんなクラスに関連する言葉も理解できましたし、アロー演算子(->)、スコープ定義演算子(::)といったなんとなくぼんやりとしか理解していなかった記号の意味も理解が進みました。
まだまだ「理解できました!」っていうほど理解してませんが....
 
 

オブジェクト指向を知らずに PHPのソースを読むと...

 
オブジェクト指向を知らずに PHPのソースを読んでいたりすると、分からない記号がいっぱい出てくる感じがします。
しかも、記号なので検索してもほしい情報になかなか行き当たらなかったりもします。
さらに、情報に行き当たったとしてもオブジェクト指向の仕組みを理解していないと、説明を読んでも全く意味が分かりません。
そんなネタ話を下記の記事で展開しています。
 「PHPのソースで見慣れない記号が出てきた・アロー演算子

 - CakePHP 3.x 4.x 5.x

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

CakePHP3のfriendsofcake/searchでツリーカテゴリーの子階層も含めて検索する方法
CakePHP3のfriendsofcake/searchでツリーカテゴリーの子階層も含めて検索する方法

CakePHP3のツリービヘイビアを使ったツリーカテゴリーの子階層も含めての検索を検索プラグイン「friendsofcake/search」を使って実現する方法を解説しました。

CakePHP3で画像・ファイルのアップロード処理を自作・解説付き・その2
CakePHP3で画像・ファイルのアップロード処理を自作・解説付き・その2

ファイルのアップロード機能の自作サンプルコードとその解説のその2。アップロード機能に関連するファイルの更新や削除の処理や画像、フォルダのパスの指定方法などを含めて解説。

getParam('action')で取得するアクション名は別関数に移動しても不変
getParam('action')で取得するアクション名は別関数に移動しても不変

CakePHP4系、5系では「getParam()」で処理中のアクション名を取得できる。そのアクションから別関数を呼び出してた関数でアクション名を調べたが同一の名称だった。

CakePHP3のユーザ管理・認証プラグイン CakeDC/Usersの導入・機能解説・3.1.5対応
CakePHP3のユーザ管理・ログイン認証プラグインCakeDC/Usersのインストール解説・3.6以降対応

CakePHP3のユーザ管理プラグイン Usersは、ユーザ登録、メール認証、ログイン認証、ユーザ管理、権限管理、reCAPTCHAなど会員制のサイトを簡単に実現可能。その導入方法、カスタマイズ方法を解説。

CakePHP 2.3 ID以外のカラムでアソシエーション(連携)をさせる場合

ID以外のカラムでアソシエーション(連携)させるための考え方とサンプルソースを用いての説明を行っています。

CakePHP3のルーティング(routes.php)の変更が反映されない時はキャッシュのクリアを
CakePHP3のルーティング(routes.php)の変更が反映されない時はキャッシュのクリアを

CakePHP3でルーティングの設定変更をしたけど反映されない!そんなときは慌てず騒がずキャッシュをクリアしよう!ルーティングの設定もキャッシュされることがあるらしい。

CakePHP3のHtmlHelperのLink設定のまとめ。mailto、URL、Root/Homeのリンクなども
CakePHP3のHtmlHelperのLink設定のまとめ。mailto、URL、Root/Homeのリンクなども

CakePHP3でHtmlHelperを使ってリンクの設定をする方法のまとめ。基本形からURLを指定、class、id、targetを指定、mailtoのリンク、画像をアンカーに、JavaScriptのダイアログなどの解説。

CakePHP4から外部のデータベースにアクセスする方法解説
CakePHP4から外部のデータベースにアクセスする方法解説

CakePHP4のシステムから他のシステムのデータベースにアクセスをし、SQL文を実行する方法を解説。try-catchでエラーを取得する方法も解説。

CakePHP3でデータを保存する save()で発生するエラーを確認する方法を解説
CakePHP3でデータを保存する save()で発生するエラーを確認する方法を解説

CakePHP3でデータ保存処理のログを取得する方法。save()では true、falseの戻り値しか取得できないが、saveOrFail()と try…catch文を使いエラーログ、エンティティを取得し、不具合の解析を行う。

CakePHP3のビューで受取ったテーブルのオブジェクトを連想配列に変換する方法
CakePHP3のビューで受取ったテーブルのオブジェクトを連想配列に変換する方法

コントローラーからビューに送ったテーブルのオブジェクトを連想配列に変換し、ビューの中で自由に使えるようにするメソッド「toArray()」の解説。連想配列に変換できれば利用度アップ!