《PHP学习:浅析Yii2 GridView 日期格式化并实现日期可搜索教程》要点:
本文介绍了PHP学习:浅析Yii2 GridView 日期格式化并实现日期可搜索教程,希望对您有用。如果有疑问,可以联系我们。
相关主题:YII框架
先给年夜家展示下日期格式化效果图,如果年夜家满意请继续往下阅读:PHP学习
这个我们分情况讨论PHP学习
1、如果你的数据库字段created_at存的时间格式是date或者datetime,那很简单,gridview中直接输出该字段created_at即可,如上图中右侧所示PHP学习
2、如果数据库存入的时间戳类型,如上图中左侧所示,则必要像下面这样进行输出PHP学习
[ '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不用做修改,PHP学习
代码如下PHP学习
$query->andFilterWhere([ // ...... 'created_at' => $this->created_at, // ...... ]);
如果你的数据库存入的是时间戳.PHP学习
第一步,修改对应规则如下图所示PHP学习
第二步,修改dataProvider可参考如下代码PHP学习
//我们搜索输入框中输入的格式一般是 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类型,个人觉得存时间戳甚是麻烦,如果你有好的建议,欢迎给我留言,共同学习进步.在此也非常感谢年夜家对维易PHP网站的支持!PHP学习
《PHP学习:浅析Yii2 GridView 日期格式化并实现日期可搜索教程》是否对您有启发,欢迎查看更多与《PHP学习:浅析Yii2 GridView 日期格式化并实现日期可搜索教程》相关教程,学精学透。维易PHP学院为您提供精彩教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/6858.html