CakePHP3のfind結果判定方法

$samples = $this->Samples->find('all');

上記の取得結果なしについて、CakePHP2まではempty($samples)true(=空配列)なら結果なしと判定できてましたが、CakePHP3では正しく判定できません。
CakePHP3ではisEmpty()を使用します。($samples->isEmpty() = trueなら結果なし)

マジックメソッドfindBy()を使った場合も同様です。
また、findBy()で結果取得後に結果を使用する場合はfirst();をコールする必要があります。

サンプルコード

$samples = $this->Samples->findById($id);
if (!$samples->isEmpty()) {
    $sample = $samples->first();
    $name = $sample['name'];
}
このエントリーをはてなブックマークに追加
にほんブログ村 IT技術ブログへ

関連コンテンツ

スポンサードリンク

Comment

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