こなさんち

しがないフリーランスエンジニアの備忘録。

クエリ結果の行数チェック。。@Cakephp3

ちょっと躓いた。

例えば、検索結果があったか、でviewを分岐したいとするじゃない?

正しい方法は

<?php if($posts->count() == 0) : ?>

  ないよー

<?php else : ?>
  
  <table>
    中略
    <?php foreach($posts as $post) : ?>
      おっほほう
    <?php endforeach; ?>

  </table>

<?php endif; ?>


なんだけどさ。

私 countメソッドの存在知らなくて((
first が nullか、でチェックしてたの。

<?php if($posts->first() == null) : ?>

  ないよー

<?php else : ?>
  
  <table>
    中略
    <?php foreach($posts as $post) : ?>
      おっほほう
    <?php endforeach; ?>

  </table>


<?php endif; ?>
  • >first() ってやっちゃう時点で、クエリにはlimit 1 がつくのでだめですね。

はい
件数取得の際はcountで。