Thinkphp実装ソートとトップセット


詳細
【前言】
バックグラウンドではソートとセットトップ操作を追加する必要があるので、自分で案を考えて実現しました.誤解があればご指摘ください
 
【本体】
(1)並べ替え操作の考え方
一般的には、パブリケーション時間に基づいてソートされます.タイムスタンプが大きいのでascではなく逆シーケンスdescを使います
$model->order('addtime desc')->select();

 
(2)セットトップ操作の考え方:
セットトップをクリックすると、データベースaddtimeフィールドの値を現在の時間に変更できます.ソートはタイムスタンプで並べられているので
の  をおおう

public function sort(){
    $model = D('cate');
    $id = I('get.id');//      id
    $addtime = time();//     
    $cate->where('id='.$id)->setField('addtime',$addtime);//        
}

 
(3)バックグラウンドで並べ替えができるようになり、フロントコントローラで調整すればよい
nav();
        $this->link();
        $this->news();
    }
    //    
    public function nav(){
    	$cate = D('cate');
    	$data = $cate->order('addtime desc')->select();
    	$this->assign('data',$data);
    }
    //  
    public function link(){
    	$link = D('link');
    	$linkdata = $link->order('addtime desc')->select();
    	$this->assign('linkdata',$linkdata);
    }
    //    ,             
    public function news(){
    	$link = D('article');
    	$newsdata = $link->order('addtime desc')->limit(10)->select();
        // dump($newsdata);
    	$this->assign('newsdata',$newsdata);
    }

}

 
 
 
 
.