6-4 データを並び替えて取得する~中高年のためのプログラミング教室:PHPドリル~

無料電話相談はこちら


お気軽にお電話ください

080-4364-8185 (代表直通)

※時間帯により取れない場合もございますが、その場合必ず折り返しさせて頂きます。
※非通知不可 ※営業のお電話はご遠慮ください。

6-4 データを並び替えて取得する~中高年のためのプログラミング教室:PHPドリル~

一日一個コツコツ楽しみましょう!

今回はデータを引き出す時に配列の中の順番を変える方法です!

Q 先ほどと同じモデル Song(テーブル songs)があります。

 id  | title            | artist   | genre
-----+------------------+----------+---------
 1     月                 桑田佳祐     JPOP
 2     ここにしか咲かない花   コブクロ     JPOP
 3     We Will Rock You   Queen      Rock

idを降順で並び替えてデータを取得し、変数songsに代入してみましょう。

A

$songs = $this->Song->find(
    'all',
    array(
        'order' => array('id DESC')
    )
);

Model名->find()は、データを取得する際に複雑な条件を指定できます。2つ目の引数は配列になっており、複数の条件を同時に指定できます。

データを並び替える場合は、「order」に並び替えたいフィールド名を配列で指定します。 標準では「昇順」で並び替えられますが、「降順」で並び替えたい場合には、フィールド名の後に「DESC」(descending)を指定します。

※ 昇順を明示的に指定するには、「ASC」(ascending)を指定します。

Model名->find()の第2引数には、他にも様々な条件を指定できます。

  • conditions フィールドの検索条件を指定します。findByfindAllbyよりも柔軟な条件を指定できます。
  • limit 取得する件数を制限します。全件取得するのは大きな負荷になるので、必要最小限のデータを取得するように心がけましょう。
  • offset スキップする件数を指定します。limitと併用し、指定した範囲のデータをピンポイントで取得できます。

 

ここまで来れば、大まかな基本は押さえたことになります。

あとは、変数・関数・制御構造を組み合わせて、処理の流れを考える訓練をしましょう。

如何でしょうか?

少しでもプログラミングに興味を持たれた方や、実際に体験してみたくなった方はまずは無料体験クラスにいらっしゃってみませんか?

無料体験クラスの詳しい内容や日時は下のリンクをクリックしてみてください!

中高年のためのプログラミング教室 無料体験クラス

皆様のお越しをお待ちしております!