Yii: 日期和时间控件的使用

1、关于日期控件,Yii内置扩展(zii)中有CJuiDatePicker,使用例子如下:

    <div class="Input">
    <label>End time:<span class="required">(*)</span></label>
    <?php
    $this->widget('zii.widgets.jui.CJuiDatePicker', array(
        'model'=>$deal,
        'attribute'=>'end_time',
        'options' => array(
            'dateFormat'=>'yy-mm-dd', //database save format
            //'altFormat'=>'mm-dd-yy' //display format
            //'showAnim'=>'fold',
            //'yearRange'=>'-3:+3' 
        ),
        'htmlOptions'=>array(
            'readonly'=>'readonly',
            'style'=>'width:90px;',
        )
    ));?>
    </div>

其中model和attribute参数必须同时提供,

这样在控制器中对于该时间日期数据就无需额外的处理。

在一些复杂情况下,可以直接用name参数替换上面两个参数组合,然后在控制器中对该数据输入项做进一步处理后赋值给模型的属性。

dateFormat用来控制日期数据保存时的格式,altFormat用来控制界面显示格式;

showAnim用来控制jqueryui日历控件的显示动画;

yearRange用来设置年份范围。


2、在很多时候,需要精确到时分秒的时间,那么就需要用到Yii的一个timepicker扩展

http://www.yiichina.net/extension/timepicker/


把该扩展放到你的扩展路经下,比如extensions,在视图中添加如下代码:

<?php 
$this->widget('application.extensions.timepicker.timepicker', array(
    'model'=>$deal,
    'name'=>'start_time',
));
?>

这个控件的日期格式是Y-m-d H:m:s和mysql的DATETIME类型匹配,如果你的数据库中使用的是timestamp,那么需要在控制器中额外转换一下。

你还可以通过在css里面定义button的样式来更改该控件的按钮显示。


iefreer


你可能感兴趣的:(数据库,Class,扩展,button,日历,fold)