Showing posts with label yii2 dataprovider example. Show all posts
Showing posts with label yii2 dataprovider example. Show all posts

Sunday, April 8, 2018

Yii2 sqldataprovider

SqlDataProvider is a plain sql query. It is also provide pagination and sorting methods.

SqlDataProvider representing data in arrays form. You can use LIMIT, GROUP BY , ORDER BY in the statements.

How to use Sql dataprovider in Yii2

$provider = new SqlDataProvider([
    'sql' => 'SELECT * FROM customer WHERE id=:id',
    'params' => [':id' => 1],
    'sort' => [
        'attributes' => [
            'name' => [
                'asc' => ['name' => SORT_ASC, 'username' => SORT_ASC],
                'default' => SORT_DESC
            ],
        ],
    ],
    'pagination' => [
        'pageSize' => 10,
    ],
]);

// get the customer results
$data = $provider->getModels();

Yii2 arraydataprovider

ArrayDataProvider just name represent based on data array. It is uses $allModels property which occupied all the data and it can be sorted.

You can set $sort and $pagination methods for sorting and pagination behaviors.

How to use Arraydataprovider in Yii2

$query = new Query;
$arrayDataProvider = new ArrayDataProvider([
    'allModels' => $query->from('user')->where(['status'=>true])->all(),
    'sort' => [
        'attributes' => ['name', 'id'],
    ],
    'pagination' => [
        'pageSize' => 5,
    ],
]);
// get the user query result
$user = $arrayDataProvider->getModels();

Recent Update

yii2 session handling

use yii\web\Session; $session = Yii::$app->session; // start session $session->open(); // close session $session->close(); ...

Most Search