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程序设计有所帮助。

相关文章

  • Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解

    Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解

    这篇文章主要给大家介绍了关于Laravel中Intervention/image图片处理扩展包的安装、使用与在使用可能遇到的坑的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11
  • PHP实现的微信APP支付功能示例【基于TP5框架】

    PHP实现的微信APP支付功能示例【基于TP5框架】

    这篇文章主要介绍了PHP实现的微信APP支付功能,结合实例形式分析了基于TP5框架的微信APP支付相关原理、操作步骤与处理技巧,需要的朋友可以参考下
    2019-09-09
  • PHP 7.0.2 正式版发布

    PHP 7.0.2 正式版发布

    七年以来,PHP一直是第四大最流行的编程语言,驱动全球超过2亿多个网站,全球超过81.7%的公共网站在服务器端采用PHP。PHP在这个星期有了自2004年以来最大的飞跃,因为PHP 7已经发布
    2016-01-01
  • CI框架封装的常用图像处理方法(缩略图,水印,旋转,上传等)

    CI框架封装的常用图像处理方法(缩略图,水印,旋转,上传等)

    这篇文章主要介绍了CI框架封装的常用图像处理方法,涉及针对图像的缩略图、水印、旋转、上传等操作,需要的朋友可以参考下
    2016-11-11
  • php实现 master-worker 守护多进程模式的实例代码

    php实现 master-worker 守护多进程模式的实例代码

    这篇文章主要介绍了php实现 master-worker 守护多进程模式的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07
  • PHP微信红包API接口

    PHP微信红包API接口

    这篇文章主要介绍了PHP微信红包API接口,针对微信高级红包接口,开发PHP版本的API接口的主要代码进行分析,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • ThinkPHP2.x防范XSS跨站攻击的方法

    ThinkPHP2.x防范XSS跨站攻击的方法

    这篇文章主要介绍了ThinkPHP2.x防范XSS跨站攻击的方法,实例分析了ThinkPHP2.x针对XSS跨站攻击的防范技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • Drupal7中常用的数据库操作实例

    Drupal7中常用的数据库操作实例

    Drupal 7 提供的新功能其中一个就是可以使用 Query Builder and Query Objects 查询生成器来构造查询对象的能力,无需在代码中写原始的SQL语句,一是提高了代码可阅读性,二是兼容所有数据库
    2014-03-03
  • thinkphp微信开之安全模式消息加密解密不成功的解决办法

    thinkphp微信开之安全模式消息加密解密不成功的解决办法

    使用thinkphp官方的WeChat包,使用不同模式可以成功,但是安全模式就是不行,现将分析解决结果做下记录,对thinkphp加密解密相关知识感兴趣的朋友参考下
    2015-12-12
  • PHP数组和explode函数示例总结

    PHP数组和explode函数示例总结

    有关php分割字符串explode函数的用法,使用explode函数将字符串分割到数组,这里给大家总结了几个示例,需要的朋友参考下。
    2015-05-05

最新评论