Pocket詳解 CakePHP辞典

概 要

PHP開発用フレームワーク「CakePHP」のリファレンスブックです(CakePHP 1.2/1.3対応)。CakePHPは初心者から上級者まで幅広く利用できるフレームワークです。機能の大半はデフォルト設定で動かせますが、取得するフィールドを絞ったり、特殊なテーブルの連携を行ったりするなど、より詳細な設定を行うこともできますが、そういった設定の詳細情報はあまり公開されていません。本書では、コンパクトでありながら詳細なリファレンス情報として基本的な設定から、ACLやキャッシュ、コアライブラリなどの詳細な設定まで掲載。機能からでも名前からでも必要な情報を引くことができます。

著者 滝下真玄
価格 本体2600円(税別)
ISBN 978-4-7980-2745-6
発売日 2010/9/28
判型 四六
色数 1色
ページ数 672
CD/DVD
対象読者 中級
シリーズ Pocket詳解辞典
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

※リンク先によっては、販売ページが用意されていないことがあります。あらかじめご了承ください。

新しいウィンドウで開く 書籍購入のご案内

サポート

サポート情報は以下からご参照下さい。

サポート情報へのリンク

目次

第1章 イントロダクション

CakePHPとは?

CakePHPの特徴

アーカイブの入手とインストール

アーカイブの入手

アーカイブの解凍

設定の変更

CakePHPでの基本的な制作方法

第2章 設定編

基本的な設定(app/config/core.php)

debug デバッグレベルの設定

log ログレベルの設定

App.encoding 文字エンコーディングの設定

App.baseUrl ベースパスの設定

Routing.prefixes

Routing.admin prefixルーティングの指定

Cache.disable キャッシュの無効化

Cache.check キャッシュのチェック設定

Session.save セッション設定

Session.model セッション管理モデルの指定

Session.table セッション管理テーブルの指定

Session.database セッション管理テーブルの指定

Session.cookie セッションで使用するクッキー名の設定

Session.timeout セッションのタイムアウト時間の設定

Session.start セッションの自動スタート

Session.checkAgent セッションのユーザエージェント判定

Security.level セキュリティレベルの設定

Security.salt ハッシュ生成のための固有値

Security.cipherSeed 可逆暗号のための固有値

Asset.timestamp ファイル書き出し時のファイル名にタイムスタンプを付加

Asset.filter.css CSSファイルをフィルタリングするためのコード設定

Asset.filter.js JavaScriptファイルをフィルタリングするためのコード設定

Acl.classname データベースACLを用いる場合のモデル名

Acl.database データベースACLを用いる場合のデータソース名

date_default_timezone_set デフォルトのタイムゾーン

データベース設定(app/config/database.php)

ルーティング(app/config/routes.php)

語尾変化(app/config/inflections.php)

ブートストラップ(app/config/bootstrap.php)

パスの設定

語尾変化の設定

第3章 モデル編

Modelクラス

バリデーション

アソシエーション

AppModelクラス

Modelクラス・プロパティ

Modelクラス・メソッド

Model::find() データソースからデータを検索して入手

Model::findBy() 指定フィールドを条件付けて検索

Model::bindModel() アソシエーション設定を動的に行う

Model::unbindModel() アソシエーションを動的に解除する

Model::setSource() 指定したテーブルでモデルのセッティングを行う

Model::set() 値のセット

Model::deconstruct() 日時データを指定フィールドが認識できる日時形式に加工

Model::schema() スキーマを入手

Model::getColumnType() 指定カラムのデータ形式を入手

Model::getColumnTypes() 各カラムのデータ形式をまとめて入手

Model::hasField() 指定した名前のフィールドが存在するかをチェック

Model::isVirtualField() 指定したフィールド名がバーチャルフィールドかをチェック

Model::getVirtualField() バーチャルフィールドの定義内容を入手

Model::create() モデルの初期化

Model::read() 指定プライマリキーのデータを取得

Model::field() 指定フィールドの値を入手する

Model::saveField() フィールド値を保存

Model::save() 1レコード分のデータを保存

Model::updateCounterCache() カウンターキャッシュの更新

Model::saveAll() 指定レコードを全て保存

Model::updateAll() 指定レコードを全て更新

Model::delete() レコードの削除

Model::deleteAll() 条件の一致するレコードを全て削除

Model::exists() 現在のモデル値がテーブル中に存在するか調べる

Model::hasAny() 条件の一致するレコードがあるか調べる

Model::resetAssociations() 動的に変更したアソシエーションを元に戻す

Model::isUnique() 該当フィールドがユニークであるかを調べる

Model::query() SQLを直接指定してデータを入手

Model::validates() バリデーションの実行

Model::invalidFields() フィールド値のバリデーション

Model::invalidate() 指定フィールドをエラーにする

Model::isForeignKey() 指定フィールドが外部キーかを調べる

Model::escapeField() SQL内で使用できる、エスケープされたフィールド名を入手する

Model::getID() プライマリキーの入手

Model::getInsertID()

Model::getLastInsertID() 挿入されたレコードのIDを入手

Model::setInsertID() 挿入レコードのプライマリキーをセット

Model::getNumRows() 取得データ数の入手

Model::getAffectedRows() 更新されたレコードの数を入手

Model::setDataSource() データソースオブジェクトのセット

Model::getDataSource() データソースオブジェクトを入手

Model::getAssociated() アソシエーション情報の入手

Model::joinModel() 結合されたモデルのフィールド名を入手

Modelクラス・コールバック

Model::beforeFind() レコード検索実行前のコールバック

Model::afterFind() レコード検索実行後のコールバック

Model::beforeSave() レコード保存実行前のコールバック

Model::afterSave() レコード保存実行後のコールバック

Model::beforeDelete() レコード削除実行前のコールバック

Model::afterDelete() レコード削除実行後のコールバック

Model::beforeValidate() バリデートを行う前のコールバック

Model::onError() エラーが発生した場合のコールバック

第4章 コントローラ編

Controllerクラス

AppControllerクラス

Controllerクラス・プロパティ

Controllerクラス・メソッド

Controller::constructClasses() ModelやComponentの読み込みと初期化

Controller::startupProcess() コントローラの開始プロセスを実行

Controller::shutdownProcess() コントローラの終了プロセスを実行

Controller::httpCodes() HTTPステータスコードに対するメッセージの入手または設定

Controller::loadModel() モデルを動的に読み込む

Controller::redirect() リダイレクト処理を実行する

Controller::header() HTTPヘッダを変更する

Controller::set() ビューにデータをセット

Controller::setAction() 他のアクションを実行

Controller::validate() バリデーションエラーの数を取得する

Controller::validateErrors() バリデーションエラーのメッセージを取得する

Controller::render() ビューのレンダリング

Controller::referer() リファラを入手

Controller::disableCache() ブラウザ内キャッシュの抑止

Controller::flash() リダイレクトされる簡易的なメッセージを表示

Controller::postConditions() ポスト形式の連想配列からモデルの検索条件を作成

Controller::paginate() ページングを考慮したデータの検索を行う

Controllerクラス・コールバック

Controller::beforeFilter() コントローラ処理開始前のコールバック

Controller::beforeRender() ビューレンダリング前のコールバック

Controller::afterFilter() コントローラ処理後のコールバック

第5章 ビュー編

Viewクラス

Viewクラス・プロパティ

Viewクラス・メソッド

View::element() エレメントを表示する

View::addScript() スクリプトを追加

View::uuid() UUIDの生成

テーマ

テーマの作成

テーマ内で使用するファイルの設置

コントローラでのテーマの指定

第6章 ビヘイビア編

ビヘイビアを利用する

ビヘイビアの利用例

ビヘイビアを作成する

ビヘイビア制作の例

コールバック

組み込みビヘイビア

Containableビヘイビア

Containableビヘイビアの設定例

ContainableBehaviorクラス・メソッド

ContainableBehavior::contain() アソシエーションの指定

Translateビヘイビア

TranslateBehaviorクラス・メソッド

TranslateBehavior::translateModel() 翻訳用モデルのインスタンスを入手

TranslateBehavior::bindTranslation() 翻訳フィールドの動的追加

TranslateBehavior::unbindTranslation() 翻訳フィールドの動的削除

Treeビヘイビア

TreeBehaviorクラス・メソッド

TreeBehavior::childcount() 指定ノードに対する子ノードの数を数える

TreeBehavior::generatetreelist() 検索を行いツリーを考慮した順序でレコード入手

TreeBehavior::children() 子ノードの入手

TreeBehavior::getparentnode() 親ノードの取得

TreeBehavior::getpath() 指定ノードから最上位までのパスを取得

TreeBehavior::movedown() 同一階層のノードの順番を下げる

TreeBehavior::moveup() 同一階層のノードの順番を上げる

TreeBehavior::recover() 問題のある階層構造の復旧を試みる

TreeBehavior::reorder() 指定ノードより下位の階層を並び替える

TreeBehavior::removefromtree() 指定ノードの取り外し

TreeBehavior::verify() 整合性のチェックを行う

第7章 コンポーネント編

コンポーネントを利用する

コンポーネントの利用例

コンポーネントを作成する

コンポーネント制作の例

コールバック

組み込みコンポーネント

Authコンポーネント

AuthComponentクラス・プロパティ

Authコンポーネントの使用例

AuthComponentクラス・メソッド

AuthComponent::isAuthorized() 認証済みのユーザかを調べる

AuthComponent::allow() 認証なしで許可するアクションのセット

AuthComponent::deny() 認証の必要なアクションを指定

AuthComponent::mapActions() CRUDに相当するアクションの設定

AuthComponent::login() ログイン処理を行う

AuthComponent::logout() ログアウトを行う

AuthComponent::user() ユーザ情報を入手

AuthComponent::redirect() 認証後のリダイレクト先の入手、もしくは設定

AuthComponent::validate() ACLを用いるユーザ情報の精査

AuthComponent::action() 現在のコントローラ・アクションからACOノードを生成する

AuthComponent::getModel() モデルインスタンスの作成

AuthComponent::identify() ユーザモデル内にユーザが存在しているかを確認

AuthComponent::hashPasswords() ユーザ情報内のパスワードフィールドをハッシュ化する

AuthComponent::password() パスワード用のハッシュ値を返す

Securityコンポーネント

SecurityComponentクラス・プロパティ

SecurityComponentクラス・メソッド

SecurityComponent::requirePost() POST形式のリクエストを必要とするアクションを指定

SecurityComponent::requireGet() GET形式のリクエストを必要とするアクションを指定

SecurityComponent::requirePut() PUT形式のリクエストを必要とするアクションを指定

SecurityComponent::requireDelete() DELETE形式のリクエストを必要とするアクションを指定

SecurityComponent::requireSecure() SSL通信を必要とするアクションを指定

SecurityComponent::requireAuth() 認証を必要とするアクションを指定

SecurityComponent::requireLogin() ログインを必要とするアクションを指定

SecurityComponent::loginCredentials() HTTP認証を試みる

SecurityComponent::loginRequest() HTTP認証のログイン画面を呼び出す

SecurityComponent::parseDigestAuthData() HTTPヘッダからダイジェスト形式の HTTP認証に必要な情報を収集する

SecurityComponent::generateDigestResponseHash() ダイジェスト形式のHTTP認証のための ハッシュコードを生成

SecurityComponent::blackHole() 不正なリクエストに対して行う処理を指定する

Sessionコンポーネント

SessionComponentクラス・メソッド

SessionComponent::activate() セッションの利用を開始する

SessionComponent::write() セッションに値を記録する

SessionComponent::read() セッションから値を読み出す

SessionComponent::delete() セッション値の削除

SessionComponent::check() セッション値の存在チェック

SessionComponent::error() セッションに関するエラーメッセージの入手

SessionComponentクラス・メソッド

SessionComponent::setFlash() 一時的なビューに表示するためのメッセージを設定する

SessionComponent::renew() セッションIDを振り直す

SessionComponent::valid() セッションが有効であるか調べる

SessionComponent::destroy() セッションの破棄

SessionComponent::id() セッションIDを入手、もしくは設定

Cookieコンポーネント

CookieComponentクラス・プロパティ

CookieComponentクラス・メソッド

CookieComponent::write() クッキーに対する値の書き込み

CookieComponent::read() クッキーからの値の読み込み

CookieComponent::delete() 指定クッキー値の削除

CookieComponent::destroy() クッキー登録値を全て破棄

Emailコンポーネント

EmailComponentクラス・プロパティ

EmailComponentクラス・メソッド

EmailComponent::send() メールの送信

EmailComponent::reset() 設定値の初期化

RequestHandlerコンポーネント

RequestHandlerComponentクラス・メソッド

RequestHandlerComponent::isAjax() Ajaxからのリクエストであるかを調べる

RequestHandlerComponent::isFlash() Flashからのリクエストであるかを調べる

RequestHandlerComponent::isSSL() SSL通信であるかを調べる

RequestHandlerComponent::isXml() XMLのリクエストを許可しているかを調べる

RequestHandlerComponent::isRss() RSSのリクエストであるか調べる

RequestHandlerComponent::isAtom() Atomのリクエストであるかを調べる

RequestHandlerComponent::isMobile() モバイル端末からのリクエストであるかを調べる

RequestHandlerComponent::isWap() WAP端末からのリクエストであるかを調べる

RequestHandlerComponent::isPost() POSTでのリクエストかを調べる

RequestHandlerComponent::isPut() PUTでのリクエストかを調べる

RequestHandlerComponent::isGet() GETでのリクエストかを調べる

RequestHandlerComponent::isDelete() DELETE形式でのリクエストかを調べる

RequestHandlerComponent::getAjaxVersion() Ajaxのバージョンを調べる

RequestHandlerComponent::setContent() Content-typeをセットする

RequestHandlerComponent::getReferrer()

RequestHandlerComponent::getReferer() リファラを入手する

RequestHandlerComponent::getClientIP() クライアント側のIPアドレスを入手する

RequestHandlerComponent::accepts() 指定された形式が クライアントに受け入れられるかを調べる

RequestHandlerComponent::requestedWith() POSTまたはPUTされた場合の Content-typeから形式名の入手、または判定

RequestHandlerComponent::prefers() クライアントの受け取り可能な Content-typeを確定させる

RequestHandlerComponent::renderAs() 指定形式に合ったレンダー設定を コントローラに対して行う

RequestHandlerComponent::respondAs() 応答形式を指定する

RequestHandlerComponent::responseType() 現在のレスポンスの形式名を入手

RequestHandlerComponent::mapType() Content-typeから形式名の入手

第8章 ヘルパー編

ヘルパーを利用する

ヘルパーの利用例

ヘルパーを作成する

ヘルパー作成の例

HelperクラスとAppHelperクラス

Helperクラス・プロパティ

Helperクラス・メソッド

Helper::loadConfig() 設定ファイルを読み込む

Helper::url() URL文字列を取得

Helper::webroot() webroot上のファイルパスを入手する

Helper::assetTimestamp() ファイルのタイムスタンプを付加したファイルパスを入手

Helper::clean() 有害なタグを取り除く

Helper::setEntity() 与えたエンティティ名からビューにエンティティをセットする

Helper::model() カレントのモデル名を入手する

Helper::modelID() カレントのモデルIDを入手

Helper::field() カレントのモデルフィールド名を入手

Helper::tagIsInvalid() 指定タグに対するエラーを調べる

Helper::domId() タグ用オプションにDOMのIDを与える

Helper::value() タグ用オプションもしくはデータから値の入手

Helper::addClass() タグのオプションに要素を追加する

Helper::output() 現在のアウトプットを設定・入手する

コールバック

組み込みヘルパー

Htmlヘルパー

HtmlHelperクラス・メソッド

HtmlHelper::addCrumb() パンくずリストに項目を追加する

HtmlHelper::getCrumbs() パンくずリストを入手

HtmlHelper::docType() DOCTYPEタグを生成する

HtmlHelper::meta() メタタグの挿入

HtmlHelper::charset() 文字エンコーディングの設定

HtmlHelper::link() リンクの生成

HtmlHelper::css() CSSを出力する

HtmlHelper::script() スクリプトリンクの生成

HtmlHelper::scriptBlock() JavaScriptのコードをHTML内に記述

HtmlHelper::scriptStart() スクリプトの開始宣言をする

HtmlHelper::scriptEnd() スクリプトの終了を宣言してコード生成

HtmlHelper::style() インラインスタイルシートを表示

HtmlHelper::image() 画像タグの生成

HtmlHelper::tableHeaders() テーブルヘッダー(th)の生成

HtmlHelper::tableCells() テーブルセル(td)の生成

HtmlHelper::tag() 一般的に用いられるHTMLタグの生成

HtmlHelper::div() divタグ文字列を生成

HtmlHelper::para() pタグ文字列を生成

HtmlHelper::nestedList() リストの生成

Formヘルパー

FormHelperクラス・メソッド

FormHelper::create() フォームの開始を宣言する

FormHelper::end() フォームの終了宣言

FormHelper::secure() トークンタグを発行

FormHelper::isFieldError() フィールドのエラーがあるかを調べる

FormHelper::error() エラーメッセージの出力

FormHelper::label() ラベルタグ文字列を生成する

FormHelper::input() 入力フォームの生成

FormHelper::inputs() 入力フォームをまとめて生成

FormHelper::text() inputタグの生成

FormHelper::password() passwordタグの生成

FormHelper::textarea() textareaタグの生成

FormHelper::select() selectタグの生成

FormHelper::checkbox() checkboxタグの生成

FormHelper::radio() radioタグの生成

FormHelper::hidden() hiddenタグの生成

FormHelper::file() fileインプットタグの生成

FormHelper::dateTime() 日時タグを生成

FormHelper::day() 日のセレクトタグを生成

FormHelper::year() 年のセレクトタグを生成

FormHelper::month() 月のセレクトタグを生成

FormHelper::hour() 時のセレクトタグを生成

FormHelper::minute() 分のセレクトタグを生成

FormHelper::meridian() 午前か午後のセレクトタグを生成

FormHelper::submit() サブミットボタンタグの生成

FormHelper::button() ボタンタグの生成

Paginatorヘルパー

PaginatorHelperクラス・メソッド

PaginatorHelper::params() ページネーションに関するパラメータの入手

PaginatorHelper::options() オプションの設定

PaginatorHelper::defaultModel() デフォルトモデルの入手

PaginatorHelper::current() 現在のページ番号を入手

PaginatorHelper::sortKey() 現在のソート対象のフィールド名を入手

PaginatorHelper::sortDir() 現在のソート方向を入手

PaginatorHelper::sort() ソート用リンクを生成

PaginatorHelper::counter() ページカウンターを入手

PaginatorHelper::numbers() ページ番号のリンクを生成する

PaginatorHelper::prev() 「戻る」リンクの作成

PaginatorHelper::next() 「進む」リンクの作成

PaginatorHelper::first() 「最初へ」リンクの生成

PaginatorHelper::last() 「最後へ」リンクの生成

PaginatorHelper::link() リンクを生成する

PaginatorHelper::url() URLを生成する

PaginatorHelper::hasPrev() 「戻る」が表示できるかをチェック

PaginatorHelper::hasNext() 「次へ」が表示できるかをチェック

PaginatorHelper::hasPage() 該当ページが存在するかをチェック

Sessionヘルパー

SessionHelperクラス・メソッド

SessionHelper::activate() セッションを機能させる

SessionHelper::read() セッションから値の読み出し

SessionHelper::check() セッション値の存在チェック

SessionHelper::error() セッションに関するエラーメッセージの入手

SessionHelper::flash() 一時的なメッセージの表示

SessionHelper::valid() セッションが有効であるか調べる

Jsヘルパー

JsHelperクラス・メソッド

JsHelper::buffer() バッファにスクリプトコードを追加する

JsHelper::getBuffer() スクリプトバッファからコードを取り出す

JsHelper::writeBuffer() スクリプトバッファの内容を書き出す

JsHelper::set() JavaScriptで使用する値を登録する

JsHelper::link() Ajaxに対応したリンクの生成

JsHelper::submit() Ajaxに対応したサブミットボタンの生成

JsHelper::alert() ダイアログを表示する

JsHelper::redirect() JavaScriptでリダイレクト指定する

JsHelper::confirm() 確認ダイアログを生成する

JsHelper::confirmReturn() 戻り値付きの確認ダイアログを生成する

JsHelper::prompt() プロンプトダイアログを生成する

JsHelper::object() JavaScriptオブジェクトを生成する

JsHelper::value() JavaScript値の生成

JsHelper::escape() 文字列をエスケープする

JsHelper::get() 対象JavaScriptオブジェクトの指定

JsHelper::event() JavaScriptイベントの設定

JsHelper::domReady() domReadyイベントで実行するスクリプトを設定

JsHelper::each() JavaScriptエンジンのeach()メソッドを利用する

JsHelper::effect() エフェクトを生成する

JsHelper::request() リクエストを発行する

JsHelper::drag() オブジェクトをドラッグできるようにする

JsHelper::drop() オブジェクトをドロップできるようにする

JsHelper::sortable() オブジェクトをソートできるようにする

JsHelper::slider() スライダーの設置

JsHelper::serializeForm() フォームの内容をシリアライズする

Javascriptヘルパー

JavascriptHelperクラス・メソッド

JavascriptHelper::codeBlock() JavaScriptコードブロックを埋め込む

JavascriptHelper::blockEnd() コードブロックの終了を宣言する

JavascriptHelper::link() avaScriptの外部リンクを設定する

JavascriptHelper::escapeScript() スクリプト内をエスケープする

JavascriptHelper::escapeString() 文字列をエスケープする

JavascriptHelper::event() JavaScriptイベントの設定

JavascriptHelper::cacheEvents() イベントスクリプトをキャッシュする

JavascriptHelper::getCache() イベントキャッシュ内容を入手する

JavascriptHelper::writeEvents() イベントキャッシュ内容を書き出す

JavascriptHelper::includeScript() JavaScriptファイルを読み込んで ビューに書き出す

JavascriptHelper::object() JavaScriptオブジェクトを生成する

JavascriptHelper::value() JavaScript値の生成

Ajaxヘルパー

AjaxHelperクラス・メソッド

AjaxHelper::link() Ajaxに対応したリンクの生成

AjaxHelper::form() Ajaxに対応したフォームの生成

AjaxHelper::submit() Ajaxに対応したサブミットボタンの生成

AjaxHelper::observeField() フィールドを監視する

AjaxHelper::observeForm() フォームを監視する

AjaxHelper::remoteFunction() リクエストを発行する

AjaxHelper::remoteTimer() 一定時間おきにリクエスト発行

AjaxHelper::div() アップデート可能なdivを生成

AjaxHelper::divEnd() アップデート可能なdivの終端を生成

AjaxHelper::isAjax() Ajaxリクエストかを調べる

AjaxHelper::drag() オブジェクトをドラッグできるようにする

AjaxHelper::drop() オブジェクトをドロップできるようにする

AjaxHelper::dropRemote() ドロップ時にリクエストを発行する

AjaxHelper::slider() スライダーを生成する

AjaxHelper::sortable() 入れ替え可能オブジェクトの生成

Xmlヘルパー

XmlHelperクラス・プロパティ

XmlHelperクラス・メソッド

XmlHelper::header() XMLヘッダを生成する

XmlHelper::serialize() XMLデータをシリアライズする

XmlHelper::elem() エレメントの生成

XmlHelper::closeElem() 閉じタグを生成する

RssHelper

RssHelperクラス・プロパティ

RssHelperクラス・メソッド

RssHelper::document() RSSであることを宣言する

RssHelper::channel() チャンネルエレメントの生成

RssHelper::items() アイテムの設置

RssHelper::item() item要素を個別に生成

RssHelper::time() RSS用時間文字列の生成

TextHelperクラス・メソッド

TextHelper::highlight() ハイライト化されたテキストの生成

TextHelper::stripLinks() リンクタグを除去する

TextHelper::autoLinkUrls() URLと思われる文字列に対して自動でリンクを生成

TextHelper::autoLinkEmails() メールアドレスと思われる文字列に対して自動でリンクを生成

TextHelper::autoLink() URLおよびメールアドレスと思われる文字列に対して自動でリンクを生成

TextHelper::truncate() 長い文字列を切り詰める

TextHelper::excerpt() 文字列から指定キーワードを中心とする指定文字数のテキストを抜き出す

NumberHelperクラス・メソッド

NumberHelper::precision() 小数点以下の桁を切り詰める

NumberHelper::toReadableSize() バイト数を計算して大きな単位の数値表現にする

NumberHelper::toPercentage() 数値をパーセント表記にする

NumberHelper::format() 数値のフォーマッティング

NumberHelper::addFormat() 通貨単位の追加

NumberHelper::currency() 通貨単位による数値のフォーマッティング

TimeHelperクラス・メソッド

TimeHelper::convert() 時差の補正

TimeHelper::convertSpecifiers() 国際化を考慮したstrftime()フォーマットの入手

TimeHelper::serverOffset() サーバ内の時差を入手する

TimeHelper::fromString() 時間文字列からUnix時間に変換

TimeHelper::nice() 英語表記の日付表示に変換する

TimeHelper::niceShort() 簡略化した英語表記の日付表示に変換する

TimeHelper::daysAsSql() 特定日をまたぐSQL条件式を生成する

TimeHelper::dayAsSql() 特定日を検索するためのSQL条件式を生成する

TimeHelper::isToday() 今日であるかを調べる

TimeHelper::isThisWeek() 今週であるかを調べる

TimeHelper::isThisMonth() 今月であるかを調べる

TimeHelper::isThisYear() 今年であるかを調べる

TimeHelper::wasYesterday() 昨日であるかを調べる

TimeHelper::isTomorrow() 明日であるかを調べる

TimeHelper::toQuarter() 四半期を調べる

TimeHelper::toUnix() Unix時間に変換する

TimeHelper::toAtom() Atom形式の時間に変換

TimeHelper::toRSS() RSS形式の時間に変換

TimeHelper::timeAgoInWords()

TimeHelper::relativeTime() 現在からの経過時間を生成

TimeHelper::wasWithinLast() 指定日時が期間内かを調べる

TimeHelper::gmt() 世界標準時の入手

TimeHelper::format() 日付の入手

TimeHelper::i18nFormat() 国際化を考慮した日付の入手

第9章 ルーティング編

URLからコントローラ・アクションを特定する(ルーティング)

基本的なルーティング指定

プラグインの利用

prefixルーティング

カスタムルーティング

Routerクラス

Routerクラス・メソッド

Router::getInstance() クラスインスタンスを入手する

Router::connect() ルーティングの設定

Router::connectNamed() 名前付きパラメータの設定

Router::parse() URL文字列をパースしパス情報を入手

Router::url() URLの生成

Router::getNamedExpressions() 名前パラメータのデフォルト正規表現の入手

Router::defaults() デフォルトのルーティングの利用を指定する

Router::mapResources() 指定したコントローラに対してアクションをマッピングする

Router::prefixes() マッピング済みのprefixルーティングを入手

Router::setRequestInfo() カレントのリクエストパラメータを登録する

Router::getParams() リクエストパラメータの入手

Router::getParam() リクエストパラメータの特定値を入手

Router::getPaths() パスを入手

Router::reload() ルーティング情報を読み直す

Router::promote() 指定ルーティング順を昇格させる

Router::getNamedElements() 名前付きパラメータを選別する

Router::matchNamed() 名前付きパラメータがマッチしているか調べる

Router::queryString() クエリストリングの生成・追加

Router::reverse() 逆ルーティングを行う

Router::normalize() URLを正規化する

Router::requestRoute() 親のリクエストルーティングを入手する

Router::currentRoute() カレントのリクエストルーティングを入手する

Router::stripPlugin() ベースURLからプラグイン名を取り除く

Router::parseExtensions() パースする拡張子の設定

Router::getArgs() URLからパラメータの入手

第10章 ACL編

ACLとは?

ACLの設定

ACL用データベースの設定

ACLを使うための設定

AROの登録

ACOの登録

AROのACOに対するアクセス権設定を行う

アクセス権のチェック

Aclコンポーネントクラス

AclComponentクラス・メソッド

AclComponent::allow() AROのACOに対するアクセスを許可する

AclComponent::deny() AROのACOに対するアクセスを拒否する

AclComponent::inherit() AROのACOに対するアクセス権を親のものに継承させる

AclComponent::check() AROがACO対してアクセス権があるかを調べる

第11章 キャッシュ編

Cacheクラス

Cacheクラスの利用例

Cacheクラス・メソッド

Cache::getInstance() クラスインスタンスを入手する

Cache::config() キャッシュシステムの設定

Cache::configured() 設定情報を全て入手

Cache::drop() 設定情報を削除する

Cache::engine() キャッシュエンジンの登録

Cache::isInitialized() キャッシュエンジンの初期化が完了済みかを調べる

Cache::settings() キャッシュエンジンの設定情報を入手

Cache::set() 一時的に設定変更を行う

Cache::gc() ガベージコレクションの実行

Cache::write() キャッシュに値を記録

Cache::read() キャッシュから値の読み込み

Cache::increment() キャッシュ値を増加する

Cache::decrement() キャッシュ値を減少させる

Cache::delete() キャッシュ値の削除

Cache::clear() 全てのキャッシュ値を削除

ビューキャッシュ

Cacheクラスの利用例

第12章 コアライブラリ編

basics.php

CakePHPグローバル関数

config() コンフィグファイルの読み込み

uses() ライブラリファイルの読み込み

debug() デバッグ情報の生成

getMicrotime() マイクロ秒の入手

sortByKey() 対象キーをソート対象とした配列の並び替え

array_combine() 一方の配列をキーとして、もう一方の配列を値として、1つの配列を生成する

h() 特殊文字をHTMLエンティティに変換する

pluginSplit() 文字列をプラグイン名とクラス名に分割する

a() 値を配列化する

aa() 値を連想配列化する

e() 値を表示する

low() 文字列を小文字化する

up() 文字列を大文字化する

r() 文字列を置換する

pr() 値の内容を可視化する

params() パラメータを入手

am() 配列を結合する

env() 環境変数の入手

file_put_contents() ファイルへ書き出し

cache() ファイルキャッシュの読み書き

clearCache() ファイルキャッシュの削除

stripslashes_deep() 再帰的にクォートされた文字列のクォート部分を取り除く

__() 指定単語を翻訳する

__n() 複数形を考慮した翻訳を行う

__d() ドメインを考慮した翻訳を行う

__dn() ドメイン・複数形を考慮した翻訳を行う

__c() カテゴリを考慮した翻訳を行う

__dc() ドメイン・カテゴリを考慮した翻訳を行う

__dcn() ドメイン・カテゴリ・複数形を考慮した翻訳を行う

LogError() エラーログの出力

fileExistsInPath() 指定ファイルがパス内に存在するかをチェックする

convertSlash() スラッシュを変換する

http_build_query() URL エンコードされたクエリ文字列を生成する

ife() 値が空であるかを調べ、条件にあった値を選択する

Appクラス

Appクラス・メソッド

App::getInstance() クラスインスタンスを入手する

App::import() コードのインポート

App::path() 指定タイプのパスを入手する

App::build() パスを追加登録

App::pluginPath() 指定プラグインの格納されているディレクトリを入手

App::core() CakePHPコアコードのパスを入手

App::objects() 存在するクラスオブジェクトを調べる

ClassRegistryクラス

ClassRegistryクラス・メソッド

ClassRegistry::getInstance() クラスインスタンスを入手する

ClassRegistry::init() クラスの初期化とオブジェクトの入手

ClassRegistry::addObject() オブジェクトの登録

ClassRegistry::removeObject() オブジェクトの削除

ClassRegistry::isKeySet() 登録名が存在するかチェック

ClassRegistry::keys() 登録名を全て入手

ClassRegistry::getObject() オブジェクトの入手

ClassRegistry::config() 初期化情報をあらかじめ登録する

ClassRegistry::map() 別名をマッピングする

ClassRegistry::mapKeys() マップされたキーの入手

ClassRegistry::flush() オブジェクトの全消去

Configureクラス

Configureクラス・メソッド

Configure::getInstance() クラスインスタンスを入手する

Configure::write() 設定情報の記録

Configure::read() 設定情報の読み込み

Configure::delete() 設定値の削除

Configure::load() 設定値ファイルの読み込み

Configure::store() 指定設定値をキャッシュファイルに書き出し

Configure::version() Cakeのバージョンを入手

Configure::listObjects() 存在するクラスオブジェクトを調べる

Configure::corePaths() CakePHPコアコードのパスを入手

Configure::buildPaths() パスを追加登録

Validationクラス

モデル内でのバリデーション

Validationクラス・メソッド

Validation::getInstance() クラスインスタンスを入手する

Validation::notEmpty() 値が空でないかを調べる

Validation::alphaNumeric() 半角英数字かを調べる

Validation::between() 値が指定範囲内に含まれているかを調べる

Validation::blank() 値が空であるかを調べる

Validation::cc() クレジットカード番号であるかを調べる

Validation::comparison() 2つの値を演算する

Validation::custom() 正規表現で値をチェックする

Validation::date() 値が日付であるかチェックする

Validation::time() 値が時間であるかを調べる

Validation::boolean() 値が論理値であるかを調べる

Validation::decimal() 値が十進数の数値であるかを調べる

Validation::email() 値がメールアドレスであるかを調べる

Validation::equalTo() 値がチェック値と同じかを調べる

Validation::extension() 拡張子が対象であるかを調べる

Validation::ip() 値がIPアドレスであるかを調べる

Validation::minLength() 値が指定以上の長さの文字列かを調べる

Validation::maxLength() 値が指定以下の長さの文字列かを調べる

Validation::money() 値が金額かを調べる

Validation::multiple() multiple形式のselectタグの戻り値を調べる

Validation::numeric() 値が数値データであるかを調べる

Validation::phone() 値が電話番号であるかを調べる

Validation::postal() 値が郵便番号であるかを調べる

Validation::range() 値が数値の範囲内であるかを調べる

Validation::ssn() 値が社会保障番号であるかを調べる

Validation::uuid() 値がユニークコードであるかを調べる

Validation::url() 値がURLであるかを調べる

Validation::inList() 値がリスト中に含まれているかを調べる

Validation::userDefined() オリジナルの定義を使ってチェックを行う

Inflectorクラス

Inflectorクラス・メソッド

Inflector::getInstance() クラスインスタンスを入手する

Inflector::rules() 変換ルールの登録

Inflector::pluralize() 複数形に変換

Inflector::singularize() 単数形に変換

Inflector::camelize() キャメル記法に変換する

Inflector::underscore() アンダースコア記法に変換する

Inflector::humanize() 人にわかりやすい形式に変換する

Inflector::tableize() テーブル名に変換する

Inflector::classify() クラス名に変換する

Inflector::variable() 変数名に変換する

Inflector::slug() 特殊文字を除外する

Setクラス

Setクラス・メソッド

Set::merge() 配列を結合する

Set::filter() 空の要素を取り除く

Set::pushDiff() 配列の差分を付加する

Set::map() 配列をオブジェクトにマッピングする

Set::numeric() 配列内の全ての値が数字であるかをチェックする

Set::enum() 指定するキーの値を見つける

Set::extract() 配列から指定キーの値を抽出

Set::classicExtract() 古典的な方法で配列から指定キーの値を抽出

Set::format() フォーマットに従って値を抽出・生成する

Set::matches() 条件にマッチしているかを調べる

Set::insert() 配列内に値を挿入

Set::remove() 配列から指定パスを削除

Set::check() 指定パスの存在チェック

Set::diff() 配列の差分を抽出する

Set::isEqual() 2つの配列の内容が一致しているかを調べる

Set::contains() 配列の値が内包されているかを調べる

Set::countDim() 配列の次元数

Set::normalize() 値を正規化する

Set::combine() 2つ以上のパスから新たな連想配列を生成する

Set::reverse() オブジェクトを連想配列に戻す

Set::flatten() 連想配列のパスをフラット化する

Set::sort() パスで示した値を対象にソートする

Set::apply() 抽出結果をコールバック処理

Xmlクラス

Xmlクラス・プロパティ

Xmlクラス・メソッド

Xml::load() XMLの読み込み

Xml::parse() XMLをパースする

Xml::error() エラーを出力する

Xml::getError() エラーを入手する

Xml::toString() 現在の値をテキスト化する

Xml::header() XMLヘッダの入手

Xml::addGlobalNs() グローバルネームスペースの追加

Xml::resolveNamespace() ネームスペースを解決する

Xml::removeGlobalNs() グローバルネームスペースを削除

Xml::options() XMLオプションを登録・入手

XmlNodeクラス

XmlNodeクラス・メソッド

XmlNode::addNamespace() ネームスペースの追加

XmlNode::removeNamespace() ネームスペースの取り外し

XmlNode::createNode() 子ノードを作成する

XmlNode::createElement() 子エレメントの作成

XmlNode::createTextNode() テキストノードの作成

XmlNode::normalize() ノードを正規化する

XmlNode::name() ノード名の入手

XmlNode::setParent() 親ノードのセット

XmlNode::cloneNode() カレントノードのクローンを作成

XmlNode::compare() ノードの比較

XmlNode::append() 与えたオブジェクトを子ノードとして追加

XmlNode::first() 最初の子ノードを入手

XmlNode::last() 最後の子ノードを入手

XmlNode::child() 指定番号の子ノードを入手

XmlNode::children() 指定ノード名の子ノードを入手

XmlNode::nextSibling() 次の兄弟ノードを入手

XmlNode::previousSibling() 前の兄弟ノードを入手

XmlNode::parent() 親ノードの入手

XmlNode::document() XMLドキュメントを探す

XmlNode::hasChildren() 子ノードを持っているかを調べる

XmlNode::toString() 現在の値をテキスト化する

XmlNode::toArray() 現在の値を配列化する

Objectクラス

Objectクラス・メソッド

Object::toString() クラス名を返す

Object::requestAction() 他のアクションを実行する

Object::dispatchMethod() メソッドのコール

Object::log() ログの出力

Object::cakeError() エラーを出力する

HttpSocketクラス

HttpSocketクラス・プロパティ

HttpSocket::request() リクエストを行う

HttpSocket::get() GETで通信を行い結果を得る

HttpSocket::post() POSTで通信を行い結果を得る

HttpSocket::put() PUTで通信を行い結果を得る

HttpSocket::delete() DELETEで通信を行い結果を得る

HttpSocket::url() URIをパースしてURLを生成

HttpSocket::parseCookies() ヘッダ情報からクッキー情報をパースする

HttpSocket::buildCookies() クッキー情報からクッキー用のヘッダ文字列を生成する

HttpSocket::reset() インスタンス内を初期化する

CakeSocketクラス

CakeSocketクラス・プロパティ

CakeSocketクラス・メソッド

CakeSocket::connect() ソケット接続の実行

CakeSocket::host() 接続先のホスト名を入手

CakeSocket::address() 接続先のIPアドレスを入手

CakeSocket::addresses() 関連性のあるIPアドレスの入手

CakeSocket::lastError() 最新のエラーを入手

CakeSocket::setLastError() ソケット通信エラーのセット

CakeSocket::write() データ送信

CakeSocket::read() データ受信

CakeSocket::disconnect() ソケット接続の切断

CakeSocket::reset() 設定情報のリセット

Stringクラス

Stringクラス・メソッド

String::uuid() ユニークIDを生成する

String::tokenize() 文字列のトークン化

String::insert() テンプレート文字列に文字を挿入する

String::cleanInsert() テンプレート内から不要な文字列を消去する

Multibyteクラス

Multibyteクラス・メソッド

Multibyte::getInstance() クラスインスタンスを入手する

Multibyte::utf8() 文字列をUTF-8の文字コード1文字単位に分解する

Multibyte::ascii() 分解された文字コードを文字列に復元する

Multibyte::strlen() 文字列の長さを得る

Multibyte::strpos() 大文字小文字を区別して文字列の位置を取得

Multibyte::stripos() 大文字小文字を区別しないで文字列の位置を取得

Multibyte::strrpos() 大文字小文字を区別して文字列が最後に現れる位置を取得

Multibyte::strripos() 大文字小文字を区別しないで文字列が最後に現れる位置を取得

Multibyte::strstr() 大文字小文字を区別して文字列を最初に見つけた位置から前後を取得

Multibyte::stristr() 大文字小文字を区別しないで文字列を最初に見つけた位置から前後を取得

Multibyte::strrchr() 大文字小文字を区別して文字を最後に見つけた位置から前後を取得

Multibyte::strrichr() 大文字小文字を区別しないで文字を最後に見つけた位置から前後を取得

Multibyte::strtolower() 全て小文字の文字列に変換する

Multibyte::strtoupper() 全て大文字の文字列に変換する

Multibyte::substr() 文字列の一部分を取得

Multibyte::substrCount() 文字列の出現回数を入手

Multibyte::mimeEncode() MIMEエンコーディングを行う

Multibyte::checkMultibyte() マルチバイト文字列かを調べる

Sanitizeクラス

Sanitizeクラス・メソッド

Sanitize::paranoid() 英数字以外を除外する

Sanitize::escape() SQLで問題の起きない文字列にエスケープする

Sanitize::html() HTML上で問題のない文字列にサニタイズする

Sanitize::stripWhitespace() ホワイトスペースの除去

Sanitize::stripImages() 画像タグの除去

Sanitize::stripScripts() スクリプトの除去

Sanitize::stripAll() ホワイトスペース除去・画像除去・スクリプト除去を同時実行

Sanitize::stripTags() タグの除去

Sanitize::clean() 複数のサニタイズを同時に行う

Sanitize::formatColumns() モデルデータをデータ型に従いサニタイズ

Securityクラス

Securityクラス・メソッド

Security::getInstance() クラスインスタンスを入手する

Security::inactiveMins() 無活動時間の入手

Security::generateAuthKey() 認証キーの生成

Security::hash() 文字列をハッシュ化する

Security::setHash() ハッシュ化のタイプを設定する

Security::cipher() 文字列を暗号化/復号する

CakeLogクラス

CakeLogクラス・メソッド

CakeLog::getInstance() クラスインスタンスを入手する

CakeLog::write() ログ出力をする

CakeLog::config() 書き出し設定を行う

CakeLog::configured() 現在の設定内容を取得する

CakeLog::drop() 設定内容の破棄

CakeLog::handleError() エラーハンドラからのエラー受け取りとエラーの書き出し

第13章 CakePHPコンソール編

CakePHPコンソールを起動する

シェルを作成する

タスクを作成する

組み込みのシェルを利用する

Shellクラス

Shellクラス・プロパティ

Shellクラス・コールバック

Shell::initialize() 初期化コールバック

Shell::startup() スタートアップコールバック

Shellクラス・メソッド

Shell::loadTasks() タスクの読み込み

Shell::in() 入力処理

Shell::out() 文字列を出力する

Shell::err() エラー出力

Shell::nl() 指定回数分の改行コードを入手する

Shell::hr() テキストベースの罫線を出力する

Shell::error() エラーメッセージの出力

Shell::createFile() ファイルの作成

Shell::help() ヘルプ出力

Shell::shortPath() ショートパスの生成

第14章 プラグイン編

プラグインを作成する

プラグインディレクトリを作る

プラグイン用AppControllerとAppModelの作成

モデル・コントローラ・ビューの作成

プラグイン内の「アセット」を使う

プラグインを利用する

資料

CakePHPの定数

CakePHPの処理の流れ

リクエスト受付から処理終了までの流れ

モデル処理の流れ

CakePHPバージョン1.2と1.3の違い

CakePHPに関する情報の入手

公式サイト

フォーラム・アンテナサイト

Twitter

PR

秀和システム