2.6 移行ガイド
CakePHP 2.6 は、2.5 の API の完全上位互換です。 このページでは、2.6 の変更と改善についてのアウトラインを紹介します。
Basics.php
stackTrace()がDebugger::trace()の便利なラッパー関数として追加されました。 その関数はdebug()のように直接表示します。しかし、デバッグレベルが有効時のみです。- 新しい国際化の関数が追加されました。新しい関数は、紛らわしいメッセージ文字列を なるべくわかりやすくしたメッセージ文脈にできます。例えば、 「read』 は英語では、 文脈によって複数の意味を持ちます。新しい
__x,__xn,__dx,__dxn,__dxc,__dxcnそして__xc関数は新しい機能へのアクセスを提供します。
キャッシュ
RedisEngine
RedisEngineがInflector::slug(APP_DIR)のデフォルトプレフィックスを持ちます。
コンソール
ConsoleOptionParser
ConsoleOptionParser::removeSubcommand()が追加されました。
Shell
overwrite()は、プログレスバーの生成を可能にし、すでに画面に表示されたテキストを 置換することでとても長い行の出力を避けるために追加されました。
コントローラ
AuthComponent
AuthComponentにuserFieldsオプションが追加されました。- AuchComponent は、ユーザーを認証してログインした時に
Auth.afterIdentityイベントが発生します。 イベントは、データとしてログインユーザを含みます。
ビヘイビア
AclBehavior
Model::parentNode()は、$model->parentNode($type)の最初の引数にタイプ (Aro, Aco) を渡します。
データソース
Mysql
- 正規表現で検索するために
RLIKEワイルドカード演算子が追加されました。 - Mysql のスキーママイグレーションは、項目追加時に
afterキーをサポートします。 このキーは、どの項目の後に新しい項目を追加するかを決めることができます。
モデル
Model
Model::save()にatomicオプションが 3.0 からバックポートされました。Model::afterFind()は、常に一貫性のある書式を使用します。$primayが false の時、結果は常に$data[0]['モデル名']以下に配置されます。 本来の振る舞いに戻すには、モデルのuseConsistentAfterFindプロパティを false に 設定します。
ネットワーク
CakeRequest
CakeRequest::param()はdata()関数のように Hash Path Syntax で値を読むことができます。CakeRequest::setInput()が追加されました。
HttpSocket
HttpSocket::head()が追加されました。- リクエスト作成時に使用する特定のプロトコルを上書きするために
protocolオプションを使用します。
I18n
- 翻訳の順番を操作するためにConfigure の値
I18n.preferAppを使用するようになりました。 true を設定するとプラグインでの翻訳よりもアプリでの翻訳を優先します。
ユーティリティ
CakeTime
CakeTime::timeAgoInWords()はstrftime()互換の絶対日付書式をサポートします。 これは書式化された時間をローカライズすることが容易になります。
Hash
Hash::get()は、パス引数が不正な時、例外が発生するようになりました。Hash::nest()は、ネストされた操作の結果、データがない時、例外が発生するようになりました。
Validation
Validation::betweenは非推奨になりました。代わりにValidation::lengthBetweenを使用してください。Validation::ssnは非推奨になりました。スタンドアロンまたはプラグインでの解決が用意されます。
ビュー
JsonView
JsonViewは_jsonOptionsビュー変数をサポートします。 これは、 JSON を生成する際に使用するビットマップオプションの設定が可能です。
XmlView
XmlViewは_xmlOptionsビュー変数をサポートします。 これは、 XML を生成する際に使用するオプションの設定が可能です。
ヘルパー
HtmlHelper
HtmlHelper::css()はonceオプションを追加しました。 これはHtmlHelper::script()のonceオプションと同じ働きをします。 後方互換性のため、デフォルト値はfalseです。HtmlHelper::link()の$confirmMessage引数は非推奨です。 メッセージを指定するには、代わりに$optionsのconfirmキーを使用してください。
FormHelper
FormHelper::postLink()の$confirmMessage引数は非推奨です。 メッセージを指定するには、代わりに$optionsのconfirmキーを使用してください。- DB フィールドが varchar 型の場合、HTMLの仕様に従ってテキストエリアに
maxlength属性を指定できます。
PaginatorHelper
PaginatorHelper::meta()はページ切り替えされた結果データのためのメタリンク(prev/next 関連)を出力するために追加されました。