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 相关文章推荐
15种PHP Encoder的比较
Apr 17 PHP
php MsSql server时遇到的中文编码问题
Jun 11 PHP
PHP JSON 数据解析代码
May 26 PHP
php指定函数参数默认值示例代码
Dec 04 PHP
一个经典的PHP文件上传类分享
Nov 18 PHP
php实现用于验证所有类型的信用卡类
Mar 24 PHP
Smarty最简单实现列表奇偶变色的方法
Jul 01 PHP
php实现数组中索引关联数据转换成json对象的方法
Jul 08 PHP
教你php如何实现验证码
Jan 20 PHP
php封装的smarty类完整实例
Oct 19 PHP
PHP7.1实现的AES与RSA加密操作示例
Jun 15 PHP
PHP实现通过文本文件统计页面访问量功能示例
Feb 13 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 防注入函数(格式化数据)
2011/08/08 PHP
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
PHP读取word文档的方法分析【基于COM组件】
2017/08/01 PHP
php静态成员方法和静态的成员属性的使用方法
2017/10/26 PHP
超级强大的表单验证
2006/06/26 Javascript
JQUERY 浏览器判断实现函数
2009/08/20 Javascript
入门基础学习 ExtJS笔记(一)
2010/11/11 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
js实现双击图片放大单击缩小的方法
2015/02/17 Javascript
你所未知的3种Node.js代码优化方式
2016/02/25 Javascript
Javascript 闭包详解及实例代码
2016/11/30 Javascript
JS实现中国公民身份证号码有效性验证
2017/02/20 Javascript
Vue计算属性的学习笔记
2017/03/22 Javascript
JS实现的添加弹出层并完成锁屏操作示例
2017/04/07 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
详解angularJS动态生成的页面中ng-click无效解决办法
2017/06/19 Javascript
jQuery中each遍历的三种方法实例分析
2018/09/07 jQuery
Vue中的基础过渡动画及实现原理解析
2018/12/04 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
js实现打字小游戏
2019/12/17 Javascript
vue循环中点击选中再点击取消(单选)的实现
2020/09/10 Javascript
vue-cli4使用全局less文件中的变量配置操作
2020/10/21 Javascript
javascript实现京东快递单号的查询效果
2020/11/30 Javascript
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
使用Python的networkx绘制精美网络图教程
2019/11/21 Python
python绘制玫瑰的实现代码
2020/03/02 Python
使用opencv中匹配点对的坐标提取方式
2020/06/04 Python
医院护士的求职信范文
2013/12/26 职场文书
小学教师寄语大全
2014/04/03 职场文书
保护环境标语
2014/06/09 职场文书
教师自我剖析材料
2014/09/29 职场文书
关于对大人不礼貌的检讨书
2014/09/29 职场文书
2014年实验室工作总结
2014/12/03 职场文书
Django分页器的用法你都了解吗
2021/05/26 Python
代码复现python目标检测yolo3详解预测
2022/05/06 Python