webman-admin/app/common/lists/ListsSortTrait.php
2023-02-28 15:13:10 +08:00

40 lines
904 B
PHP

<?php
namespace app\common\lists;
trait ListsSortTrait
{
protected $orderBy;
protected $field;
/**
* @notes 生成排序条件
* @param $sortField
* @param $defaultOrder
* @return array|string[]
* @author 令狐冲
* @date 2021/7/16 00:06
*/
private function createOrder($sortField, $defaultOrder)
{
if (empty($sortField) || empty($this->orderBy) || empty($this->field) || !in_array($this->field, array_keys($sortField))) {
return $defaultOrder;
}
if (isset($sortField[$this->field])) {
$field = $sortField[$this->field];
} else {
return $defaultOrder;
}
if ($this->orderBy = 'desc') {
return [$field => 'desc'];
}
if ($this->orderBy = 'asc') {
return [$field => 'asc'];
}
return $defaultOrder;
}
}