下午好,我需要在widget活动表单中格式化时间类型字段的输入,我的表单应该是没有秒的短时间,字段是在类型time的表中定义的,有什么方法可以告诉它对于小部件活动或模型,该字段的格式为" php:h:i"。
非常感谢,
的Wilmer。
<?= $form->field($model, 'turnos008')->textInput(['class' => 'form-control col-md-2 inicio']) ?>
答案 0 :(得分:0)
在渲染字段之前(例如在控制器中),您可以执行以下操作:
我认为时间是12:20:21 AM
//for example: output is : 12:20 AM
$model->turnos008=Yii::$app->formatter->asTime($model->turnos008, 'short');
//for example: output is : 12:20:21 AM
$model->turnos008=Yii::$app->formatter->asTime($model->turnos008, 'medium');
//for example: output is : 12:20:21 AM GMT
$model->turnos008=Yii::$app->formatter->asTime($model->turnos008, 'long');
//for example: output is : 12:20
$model->turnos008=Yii::$app->formatter->asTime($model->turnos008, 'php:h:i');
您可以查看http://www.yiiframework.com/doc-2.0/yii-i18n-formatter.html#asTime()-detail上的Yii2
官方文档
答案 1 :(得分:0)
以以下格式显示:格式"php: h: i"
<?= $form->field($model,'fieldTime')->textInput(['value' => date('h:i', $model->fieldTime)]) ?>
<?php if (extension_loaded('intl')): ?>
<?= $form->field($model,'fieldTime')->textInput(['value' => \Yii::t('user', '{0, date, hh:mm}', [$model->fieldTime])]) ?>
<?php endif ?>
<?= $form->field($model,'fieldTime',['inputOptions' => ['value' => \Yii::$app->formatter->asTime($model->fieldTime, 'php:h:i')]]) ?>
<?= $form->field($model,'fieldTime')->textInput(['value' => \Yii::$app->formatter->asDate($model->fieldTime, 'php:h:i')]) ?>
注意:将“ fieldTime”更改为您的字段名称
原始验证:Link
[
[['from_date', 'to_date'], 'date'],
[['from_datetime', 'to_datetime'], 'datetime'],
[['some_time'], 'time'],
]