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的配置文件php.ini
Oct 09 PHP
杏林同学录(八)
Oct 09 PHP
PHP 递归效率分析
Nov 24 PHP
PHP XML error parsing SOAP payload on line 1
Jun 17 PHP
php 数据库字段复用的基本原理与示例
Jul 22 PHP
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
Nov 10 PHP
基于PHP读取csv文件内容的详解
Jun 18 PHP
详解WordPress开发中wp_title()函数的用法
Jan 07 PHP
PHP的Yii框架中View视图的使用进阶
Mar 29 PHP
PHP不使用递归的无限级分类简单实例
Nov 05 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
Oct 21 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
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
用DBSQL类加快开发MySQL数据库程序的速度
2006/10/09 PHP
php 读取文件头判断文件类型的实现代码
2013/08/05 PHP
php打印输出棋盘的实现方法
2014/12/23 PHP
php正则匹配文章中的远程图片地址并下载图片至本地
2015/09/29 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
静态html文件执行php语句的方法(推荐)
2016/11/21 PHP
php判断是否为ajax请求的方法
2016/11/29 PHP
使用JS进行目录上传(相当于批量上传)
2010/12/05 Javascript
分享几个超级震憾的图片特效
2012/01/08 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
JS来动态的修改url实现对url的增删查改
2014/09/05 Javascript
jquery实现的Accordion折叠面板效果代码
2015/09/02 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
JS实现区分中英文并统计字符个数的方法示例
2018/06/09 Javascript
vue  自定义组件实现通讯录功能
2018/09/30 Javascript
使用koa-log4管理nodeJs日志笔记的使用方法
2018/11/30 NodeJs
微信小程序使用map组件实现路线规划功能示例
2019/01/22 Javascript
js实现鼠标拖拽缩放div实例代码
2019/03/25 Javascript
Python实现拼接多张图片的方法
2014/12/01 Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
2016/03/14 Python
centos6.7安装python2.7.11的具体方法
2017/01/16 Python
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
python队列Queue的详解
2019/05/10 Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
2019/06/14 Python
python 设置输出图像的像素大小方法
2019/07/04 Python
python标准库OS模块详解
2020/03/10 Python
Intersport西班牙:在线体育商店
2019/11/06 全球购物
《伯牙绝弦》教学反思
2014/03/02 职场文书
少儿节目主持串词
2014/04/02 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
法务专员岗位职责
2015/02/14 职场文书
Redis的字符串是如何实现的
2021/10/24 Redis
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js