网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的范文:

 

标题 浅析Yii2 GridView 日期格式化并实现日期可搜索教程
范文
    这篇文章主要介绍了Yii2 GridView 日期格式化并实现日期可搜索教程的相关资料,需要的朋友可以参考下
    这个我们分情况讨论
    1、如果你的数据库字段created_at存的时间格式是date或者datetime,那很简单,gridview中直接输出该字段created_at即可,如上图中右侧所示
    2、如果数据库存入的时间戳类型,如上图中左侧所示,则需要像下面这样进行输出
    [
    'attribute' => 'created_at',
    'value' => function ($model) {
    return date('Y-m-d H:i:s', $model->created_at);
    },
    ],
    [
    'attribute' => 'created_at',
    'format' => ['date', 'Y-m-d H:i:s'],
    ],
    以上展示了两种方式进行格式输出,都可以。但是,如果想要实现搜索的机制,如果你的数据库存入的是datetime型,很方便,dataProvider不用做修改,
    代码如下
    $query->andFilterWhere([
    // ......
    'created_at' => $this->created_at,
    // ......
    ]);
    如果你的数据库存入的是时间戳。
    第一步,修改对应规则如下图所示
    第二步,修改dataProvider可参考如下代码
    //我们搜索输入框中输入的格式一般是 2016-01-01 而非时间戳
    //输出2016-01-01无非是想搜索这一天的数据,因此代码如下
    if ($this->created_at) {
    $createdAt = strtotime($this->created_at);
    $createdAtEnd = $createdAt + 24*3600;
    $query->andWhere("created_at >= {$createdAt} AND created_at <= {$createdAtEnd}");
    }
    这里做个小总结,建议使用datetime类型,个人觉得存时间戳甚是麻烦,如果你有好的建议,欢迎给我留言,共同学习进步。
随便看

 

在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/23 0:25:21