首頁 >php框架 >YII >yii有哪些排序方法

yii有哪些排序方法

尚
原創
2019-12-17 16:18:543236瀏覽

yii有哪些排序方法

展示多條資料時,通常需要對資料依照使用者指定的列進行排序。 Yii 使用 yii\data\Sort 物件來代表排序方案的相關資訊。特別地:

attributes:指定屬性,資料依照其排序。一個屬性可以就是簡單的一個 model attribute, 也可以是結合了多個 model 屬性或是 DB 欄位的複合屬性。以下將給出更多細節:

attributeOrders:給出每個屬性目前設定的排序方向。

orders:以低階列的方式給出排序方向。

使用 yii\data\Sort,首先要宣告什麼屬性能進行排序。接著從 attributeOrders 或 orders 取得目前設定的排序訊息, 然後使用它們來自訂資料查詢。例如:

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();

PHP中文網,有大量免費的Yii入門教學,歡迎大家學習!

以上是yii有哪些排序方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn