Yii2超好用的日期和时间组件(值得收藏)


Posted in PHP onMay 05, 2016

日期组件,时间组件在平时开发中是必不可少的。今天我们就来谈谈在yii2中的超好用的时间组件,也省的大家各种找js插件了。

分享之前我们先预览下效果,看看到底怎么个好用法。

Yii2超好用的日期和时间组件(值得收藏)

当然啦,好用不好用在于自我的感觉,光看上面的图片是感受不到的。再告诉你个好消息,这两款插件已经跟yii2整合了,使用起来也是灰常的简单哦。

关于日期组件跟时间组件,前者是date('Y-m-d')类型,后者是date('Y-m-d H:i:s')类型,自然不用多说。

我们先来看看时间组件扩展

既然是扩展组建,第一步当然是安装。

composer require kartik-v/yii2-widget-datetimepicker "*"

安装好之后,如果你的表单使用ActiveForm生成的,可以参考下面的代码

use kartik\datetime\DateTimePicker; 
<?= $form->field($model, 'created_at')->widget(DateTimePicker::classname(), [ 
'options' => ['placeholder' => ''], 
'pluginOptions' => [ 
'autoclose' => true, 
'todayHighlight' => true, 
] 
]); ?>

有些不喜欢用ActiveForm生成表单的同学就需要参考下面的用法了

use kartik\datetime\DateTimePicker; 
echo '<label>时间</label>'; 
echo DateTimePicker::widget([ 
'name' => 'Article[created_at]', 
'options' => ['placeholder' => ''], 
//注意,该方法更新的时候你需要指定value值 
'value' => '2016-05-03 22:10:10', 
'pluginOptions' => [
'autoclose' => true, 
'format' => 'yyyy-mm-dd HH:ii:ss', 
'todayHighlight' => true 
] 
]);

至于哪个方便,不言而喻。

整个安装过程确实很简单,我们接下来以同样的方式进行安装日期组件。

composer require kartik-v/yii2-widget-datepicker "@dev"

安装好了后我们开始使用日期组件

use kartik\date\DatePicker; 
<?php echo DatePicker::widget([ 
'name' => 'Article[created_at]', 
'options' => ['placeholder' => '...'], 
//value值更新的时候需要加上 
'value' => '2016-05-03', 
'pluginOptions' => [ 
'autoclose' => true, 
'format' => 'yyyy-mm-dd', 
'todayHighlight' => true, 
] 
]); ?>

看了上面的代码,想必有同学已经猜到针对ActiveForm生成的日期组件的用法了。没错,就那么用,si不si很简单。

<?= $form->field($model, 'created_at')->widget(DatePicker::classname(), [ 
'options' => ['placeholder' => ''], 
'pluginOptions' => [ 
'autoclose' => true, 
'todayHighlight' => true, 
'format' => 'yyyy-mm-dd', 
] 
]); ?>

当然,上面的时间格式都是可以调整的,但是,日期组件,既然是日期,肯定也就只支持ymd三种类型的参数,不然跟时间组件又有啥差别。

有些小伙伴说为啥自己的是英文的,用起来很不方便呀,我想反问一句,你的项目是不是没配置语言是中文?还没配置的同学只需要在你的配置文件里面加上 'language'=>'zh-CN', 即可。

最后,我们看看最终的效果图。

Yii2超好用的日期和时间组件(值得收藏)

PHP 相关文章推荐
PHP 验证码的实现代码
Jul 17 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
Apr 25 PHP
9个实用的PHP代码片段分享
Jan 22 PHP
PHP实现懒加载的方法
Mar 07 PHP
php实现用已经过去多长时间的方式显示时间
Jun 05 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
php实现文章置顶功能的方法
Oct 20 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
Aug 30 PHP
php实现的后台表格分页功能示例
Oct 23 PHP
PHP多个图片压缩成ZIP的方法
Aug 18 PHP
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
Dec 04 PHP
PHP优化之批量操作MySQL实例分析
Apr 23 PHP
joomla实现注册用户添加新字段的方法
May 05 #PHP
Joomla数据库操作之JFactory::getDBO用法
May 05 #PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 #PHP
PHP随机数 C扩展随机数
May 04 #PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 #PHP
Joomla使用Apache重写模式的方法
May 04 #PHP
Joomla开启SEF的方法
May 04 #PHP
You might like
php项目打包方法
2008/02/18 PHP
微信自定义菜单的处理开发示例
2015/04/16 PHP
PHP MYSQL实现登陆和模糊查询两大功能
2016/02/05 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
2019/05/06 PHP
jquery中获取select选中值的代码
2011/06/27 Javascript
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
深入分析JSONP跨域的原理
2014/12/10 Javascript
jQuery 实现侧边浮动导航菜单效果
2014/12/26 Javascript
通过原生JS实现为元素添加事件的方法
2016/11/23 Javascript
微信小程序时间标签和时间范围的联动效果
2019/02/15 Javascript
vue+django实现一对一聊天功能的实例代码
2019/07/17 Javascript
element ui分页多选,翻页记忆的实例
2019/09/03 Javascript
Vue自定义组件的四种方式示例详解
2020/02/28 Javascript
python中列表元素连接方法join用法实例
2015/04/07 Python
举例讲解如何在Python编程中进行迭代和遍历
2016/01/19 Python
python获取list下标及其值的简单方法
2016/09/12 Python
Python 多进程和数据传递的理解
2017/10/09 Python
详解如何在Apache中运行Python WSGI应用
2019/01/02 Python
详解python的四种内置数据结构
2019/03/19 Python
Python利用WMI实现ping命令的例子
2019/08/14 Python
解决pyPdf和pyPdf2在合并pdf时出现异常的问题
2020/04/03 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
2020/06/17 Python
德国机场停车位比较和预订网站:Ich-parke-billiger
2018/01/08 全球购物
英国版MAC彩妆品牌:Illamasqua
2018/04/18 全球购物
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
银行实习人员自我鉴定
2013/09/22 职场文书
施工资料员岗位职责
2014/01/06 职场文书
企业授权委托书范本
2014/04/02 职场文书
男女朋友协议书
2014/04/23 职场文书
2015年评职称个人工作总结
2015/10/15 职场文书
信息技术研修心得体会
2016/01/08 职场文书
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python
浅谈css实现背景颜色半透明的两种方法
2021/12/06 HTML / CSS
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers