Yii2中SqlDataProvider用法示例

 更新时间:2016年09月22日 10:11:16   作者:懒人  
这篇文章主要介绍了Yii2中SqlDataProvider用法,结合实例形式分析了Yii2框架中使用SqlDataProvider类操作数据库的相关技巧,需要的朋友可以参考下

本文实例讲述了Yii2中SqlDataProvider用法。分享给大家供大家参考,具体如下:

第一种方法:

$totalCount = Yii::$app->db->createCommand('SELECT COUNT(*) FROM posts WHERE publish=:publish', [':publish' => 1])
      ->queryScalar();
$dataProvider = new SqlDataProvider([
  'sql' => 'SELECT * FROM posts WHERE publish=:publish',
  'params' => [':publish' => 1],
  'totalCount' => $totalCount,
  //'sort' =>false, to remove the table header sorting
  'sort' => [
    'attributes' => [
      'title' => [
        'asc' => ['title' => SORT_ASC],
        'desc' => ['title' => SORT_DESC],
        'default' => SORT_DESC,
        'label' => 'Post Title',
      ],
      'author' => [
        'asc' => ['author' => SORT_ASC],
        'desc' => ['author' => SORT_DESC],
        'default' => SORT_DESC,
        'label' => 'Name',
      ],
      'created_on'
    ],
  ],
  'pagination' => [
    'pageSize' => 10,
  ],
]);
return $dataProvider;

第二种:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => [
      ['class' => 'yii\grid\SerialColumn'],
      [
        'label' =>"Name",
        'attribute' => 'tbl_column_name',
        'value'=>function($data){
          return $data["tbl_column_name"];
        }
      ],
      'title',
      'author',
      'created_on',
      ['class' => 'yii\grid\ActionColumn'],
    ],
]); ?>

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

相关文章

  • thinkphp3.2.3版本的数据库增删改查实现代码

    thinkphp3.2.3版本的数据库增删改查实现代码

    下面小编就为大家带来一篇thinkphp3.2.3版本的数据库增删改查实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • PHP内核学习教程之php opcode内核实现

    PHP内核学习教程之php opcode内核实现

    opcode是计算机指令中的一部分,用于指定要执行的操作, 指令的格式和规范由处理器的指令规范指定,通过本文给大家介绍PHP内核学习教程之php opcode内核实现,感兴趣的朋友一起学习吧
    2016-01-01
  • CI框架在CLI下执行占用内存过大问题的解决方法

    CI框架在CLI下执行占用内存过大问题的解决方法

    很多程序员在使用codeigniter CLI下执行一个大批量数据导入的问题时,会一直出现内存过高的情况,下面对此分析器原因及解决办法。
    2014-06-06
  • Laravel 5.5基于内置的Auth模块实现前后台登陆详解

    Laravel 5.5基于内置的Auth模块实现前后台登陆详解

    最近在使用laravel5.5,利用其实现了一个功能,下面分享给大家,这篇文章主要给大家介绍了关于Laravel 5.5基于内置的Auth模块如何实现前后台登陆的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-12-12
  • PHP中单双号与变量

    PHP中单双号与变量

    这篇文章主要介绍了PHP中单双号与变量的相关资料,本文实例代码结合文字说明,给大家介绍的非常详细,需要的朋友参考下
    2018-03-03
  • php实现aes加密类分享

    php实现aes加密类分享

    这篇文章主要介绍了php实现的aes加密类,代码中有使用方法,需要的朋友可以参考下
    2014-02-02
  • Zend Framework框架db类的分页示例分享

    Zend Framework框架db类的分页示例分享

    这篇文章主要介绍了Zend Framework框架db类的分页示例,代码很简单,大家看一下注释就可以使用了
    2014-03-03
  • 用PHP读取RSS feed的代码

    用PHP读取RSS feed的代码

    由于需要读取不同来源的rss feed,写了一个php程序来循环读取rss feed,为了方便阅读及了解程序实现过程,加上了注释,和大家共同学习。
    2008-08-08
  • PHP查看当前变量类型的方法

    PHP查看当前变量类型的方法

    这篇文章主要介绍了PHP查看当前变量类型的方法,需要的朋友可以参考下
    2015-07-07
  • yii框架结合charjs实现统计30天数据的方法

    yii框架结合charjs实现统计30天数据的方法

    这篇文章主要介绍了yii框架结合charjs实现统计30天数据的方法,涉及Yii框架日期运算、数据查询相关操作技巧,需要的朋友可以参考下
    2020-04-04

最新评论