PHP

【PHP】クラスの配列をソートする

更新日:

クラスのメンバに応じて配列をusortでソートします。クラス内の関数でソートする場合は下のようにすると使えます。

class hoge {
    public $updatetime;    //時間を格納する(例:2013-10-15)
}
class huga {
    //最新順にソートされる
    private function cmp($a, $b) {
        return ($a->updatetime < $b->updatetime);
    }
    public function hogehoge() {
        $list = array();
        /*
          この間に$list配列にhogeクラスのインスタンスが格納される
         */
        usort($list, array($this, "cmp"));
    }
}

hogeクラスには時間を記したメンバがあります。他のメンバは省略しています。一方hugaクラスにはusortで使う関数cmpとhogeクラスを使ったメソッド(hogehoge)があります。hogehoge内部ではhogeをインスタンス化したものを配列にした$listを作り、それを時間順にソートします。

Amazonリンク
参考:mementoo.info

-PHP

Copyright© めめんと , 2020 All Rights Reserved Powered by AFFINGER5.