Yii 2 0 中使用分頁

2021-08-14 17:27:33 字數 1147 閱讀 3355

use

yii\data\pagination;

$model = user::find();

$model = $model->where(['jihuo' => 7]);

$pages = new pagination(['totalcount' => $model->count()]);

$models = $model->offset($pages->offset)

->limit($pages->limit)

->all();

return

$this->render('index', [

'models' => $models,

'pages' => $pages,

]);

= yii\widgets\linkpager::widget([

'pagination' => $pager,

]) ?>

預設是這樣的:

// 在控制器中做分頁時

$model = user::find();

//分頁

$pager = new pagination(['totalcount' => $query->count();]);

// 這邊我的理解是先例項化好分頁的20條資料,但不查出來

$model = $model->offset($pager->offset)->limit($pager->limit);

$query = user::find()->select('*')->from(['t1' => user::tablename(), 't2' => $model])->where('t1.id=t2.id');

$bankdata = $query->all();// 這樣查出來的速度就非常快

// 貼一下sql原型,方便理解

select t1.* from user t1, (select id from user limit 0,20 ) t2 where t1.id=t2.id;

Yii2 0中使用redis作為快取

因為業務公升級,原來的單伺服器公升級為多伺服器,並做負載均衡部署,但是發現上線後資料經常出現問題,後排查發現是快取問題,因為之前用到是yii2.0框架中預設的快取方式,把資料快取到了 所在伺服器,導致負載均衡的各伺服器之間快取不同步,為解決這個問題,打算替換redis為檔案快取 首先安裝compos...

Yii2 0實現AJAX搜尋 分頁

1.首先判斷搜尋的資料是否為空 php view plain copy 2.定義乙個where條件 目的是讓sql語句 恆成立 php view plain copy where 1 3.判斷資料是否存在,拼接搜尋的語句。如果多條件搜尋,則直接 and 連線 即可 php view plain co...

yii2 0 模組的使用

以高階模板為例 1 複製目錄 frontend或backend 為乙個新目錄pro 修改advanced common config bootstrap.php 新增一行,載入剛才的路勁 yii setalias pro dirname dirname dir pro 2 目錄pro建立module...