CakePHPクッキング
CakePHPをこれから始める方、ある程度CakePHPで開発をしている初級〜中級者の方を対象に、CakePHPでの開発をスピードアップするための情報をまとめています。
CakePHP入門
まずはCakePHPのインストールから、最初に設定しておいた方が後々開発しやすくなる機能の設定を見ていきましょう。
- CakePHPの初期設定
- URLを統一(WWWありなしとスラッシュありなし)
- DebugKitの導入方法
- routesの設定
- メンテナンスモードを簡単実装できるMaintenance plugin
- テスト環境と本番環境の判定
- 短縮形や定数を活用
- ログを出力する方法
- ログローテーション
コントローラー
MVCのCのコントローラーで使える便利な機能を見ていきましょう。
- XMLクラスの使い方
- ログを出力する方法
- SSL接続にリダイレクトさせる
- 無限スクロールをさせる
- コンポーネントでモデルを呼び出す
- ページ送り
- ページネーションではDISTINCTではなく、GROUP BYを使う
- ファイルの存在確認やフォルダー内のファイル一覧取得
モデル
MVCのMにあたるモデル、データを扱う処理を行う部分になります。
- Modelの使い方
- データベースを持続的接続にする方法
- テスト環境と本番環境の判定
- データを取得する
- countやsumを使う時のフィールド名を指定する
- 独自のfindを定義するfindMethods
- 特定の時だけSQLの条件を追加するならSet::mergeを使う
- Model内で別のModelを呼び出す
- テーブルのカラム名を一発で取得する
- MySQLやPostgreSQLで型変換してデータ取得する
- 画像や様々なファイルをDBに格納
- データキャッシュ
- トランザクション
- アソシエーション
- 連結されていないデータを抽出
- INSERTしたIDを取得する
- DBに接続できない
ビュー
ビューはMVCのV。ここでは表示部分のHTMLだけでなく、XMLやJSONやPDFなどの出力を扱う部分になります。
- URLやメールアドレスに自動でリンクを貼ってくれるヘルパー
- Facebook用にOGP対応してくれるヘルパー
- 日付フォーマットヘルパー
- 指定文字数を抜粋して表示するTEXTヘルパー
- table(表)の作り方
- Formの便利な使い方
- inputタグのrequired属性
- ラジオボタンの作り方
- 日付のセレクトボックスの作り方
- セレクトボックスでグループ分けするならHash::combineが便利
- ヘルパーをオーバーライドする
- JavaScriptをコードの最下部に配置
- flash messageをカスタマイズする
- view blocksの使い方
- 404エラーページをカスタマイズ
- ページ送り
- ページネーションではDISTINCTではなく、GROUP BYを使う
- テーマ機能
- Bootstrap3を使う
- パンくずリストを作る
- 繰り返し使うデザインはエレメントを活用
- ビューキャッシュ
- リンクの最後に常にスラッシュをつける方法
CakePHPで使えるTips
その他、便利なTipsなどを紹介していきます。
- WordPressとCakePHPの共存
- サイトマップの作成方法
- CakePHPでGoogleAnalyticsAPIを使う
- TCPDFを使ってCakePHPでPDFを作成
- PHPExcelの導入
- Shellを実行
- Warning: SplFileInfo::openFile〜の警告が表示されたら
- 常にSSL(https)接続する方法
- CakeEmailを使った確認画面付きの問い合わせフォーム
- ログローテーション
- リファラーを取得する
- Basic認証
- Socket通信
- routes
- Prefixルーティング
- メンテナンスモードを簡単実装できるMaintenance plugin
- IPアドレスの取得方法
- 短縮形や定数を活用