yii2使用时间插件 yii2-date-range,这个是选择时间范围的一个插件 出现的格式:2015-07-31 - 2015-07-31
1首先要安装了 composer(作曲家)这个软件,目前大多框架插件直接来源于composer中,使用composer安装插件,类似于使用php的 curl 在线安装软件
composer(作曲家) 地址: http://www.phpcomposer.com/
2、参考网址
3、使用cmd切换到yii2框架的安装目录
4、
php composer.phar require kartik-v/yii2-date-range "*"
5、
"kartik-v/yii2-date-range": "*"
6、当yii2时间插件 yii2-date-range,安装成功后我们找到其安装目录
7、当时间差价安装完成后,我们可以同过 composer.json配置,或者修改,一般通过composer安装的第三方插件,是已经配置好的
8、在视图使用时间插件
1 <?php 2 3 /* @var $this \yii\web\View */ 4 /* @var $content string */ 5 6 use backend\assets\AppAsset; 7 use yii\helpers\Html; 8 use yii\bootstrap\Nav; 9 use yii\bootstrap\NavBar; 10 use yii\widgets\Breadcrumbs; 11 use common\widgets\Alert; 12 13 //引入时间插件 14 use kartik\daterange\DateRangePicker; 15 ?> 16 <!DOCTYPE html> 17 <html> 18 <head> 19 <title>Bootstrap 实例 - 边框表格</title> 20 <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet"> 21 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> 22 <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> 23 </head> 24 <body> 25 <!--时间插件--> 26 <form role="from" method="post" action="index.php?r=user/index"> 27 <table width="300px"> 28 <tr> 29 <td ><span width="60px">时间:</span></td> 30 <td width="240px"> 31 <?php 32 echo DateRangePicker::widget([ 33 'model'=>$model, //model,和attribute是必须有的属性 34 'attribute'=>'createtime', //此处是你数据库,存储时间字段的名字 35 'convertFormat'=>true, 36 'pluginOptions'=>[ 37 'timePicker'=>true, 38 'timePickerIncrement'=>30, 39 'format'=>'Y-m-d h:i A' 40 ] 41 ]); ?> 42 </td> 43 <input type="hidden" name="activity_id" value="<?php echo $activity_id; ?>"> 44 <td width="30px"><input type="submit" value="搜索"/></td> 45 </tr> 46 </table> 47 48 </form>
9.控制器使用
1 //判断是否有时间搜索提交 2 if(isset($_POST['User']['createtime'])){ 3 //重新给$activity_id赋值 4 $activity_id = $_POST['activity_id']; 5 $time = $_POST['User']['createtime']; 6 //var_dump($_POST['User']['createtime']); 7 8 //string '2016-03-09 - 2016-04-07' (length=23) 9 //截取字符串 10 $createtime = explode(' - ',$time); 11 12 //获取到格式化好的时间,将其转换为时间戳 13 $start_time = strtotime($createtime[0]); 14 $end_time = strtotime($createtime[1]); 15 //select * from table where 时间字段 between '2010-7-12 11:18:54' and '2010-7-12 11:22:20' 16 $info = Yii::$app->db->createCommand("select * from item_z_user where createtime between $start_time and $end_time")->queryAll(); 17 //var_dump($info); 18 //die; 19 }