您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)yii中有什么排序方法,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
展示多條數(shù)據(jù)時,通常需要對數(shù)據(jù)按照用戶指定的列進(jìn)行排序。 Yii 使用 yii\data\Sort 對象來代表排序方案的有關(guān)信息。 特別地:
attributes:指定屬性,數(shù)據(jù)按照其排序。 一個屬性可以就是簡單的一個 model attribute, 也可以是結(jié)合了多個 model 屬性或者 DB 列的復(fù)合屬性。下面將給出更多細(xì)節(jié):
attributeOrders:給出每個屬性當(dāng)前設(shè)置的排序方向。
orders:按照低級列的方式給出排序方向。
使用 yii\data\Sort,首先要聲明什么屬性能進(jìn)行排序。 接著從 attributeOrders 或者 orders 取得當(dāng)前設(shè)置的排序信息, 然后使用它們來自定義數(shù)據(jù)查詢。例如:
use yii\data\Sort; $sort = new Sort([ 'attributes' => [ 'age', 'name' => [ 'asc' => ['first_name' => SORT_ASC, 'last_name' => SORT_ASC], 'desc' => ['first_name' => SORT_DESC, 'last_name' => SORT_DESC], 'default' => SORT_DESC, 'label' => 'Name', ], ], ]); $articles = Article::find() ->where(['status' => 1]) ->orderBy($sort->orders) ->all();
關(guān)于“yii中有什么排序方法”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。