Yii2 Formatter 格式化使用

yii\i18n\Formatter是一个格式化的小助手,对于我们实现前端用户友好的显示有非常大的帮助。

一、常用的属性

  • $dateFormat
    日期格式:yyyy-MM-dd,或者 “short”, “medium”, “long”, or “full”

  • $datetimeFormat
    具体时间格式:yyyy-MM-dd HH:mm:ss

  • $locale
    区域位置,如果没有设置,将使用 yii\base\Application::$language ,按照这一区域的习惯显示格式

  • $defaultTimeZone
    时区,默认UTC

要使用formatter需要在config中的配置

'formatter' => [
    'dateFormat' => 'yyyy-MM-dd',
    'datetimeFormat' => 'yyyy-MM-dd HH:mm:ss',
    'decimalSeparator' => ',',
    'thousandSeparator' => ' ',
    'currencyCode' => 'CNY',
],

二、格式化

echo Yii::$app->formatter->asDate('2014-01-01', 'long'); // 输出: January 1, 2014
echo Yii::$app->formatter->asRelativeTime(1463632983).'
'
; // 几天前 几小时前 echo Yii::$app->formatter->asDatetime(1463606983).'
'
; // 2015-6-16 11:51:43 echo Yii::$app->formatter->asDatetime('now').'
'
; // 也可处理null值的输出显示: echo Yii::$app->formatter->asDate(null).'
'
; // 输出: (未设置) echo Yii::$app->formatter->asPercent(0.125, 2).'
'
; // 输出: 12.50% echo Yii::$app->formatter->asTimestamp('now').'
'
;//输出时间戳 echo Yii::$app->formatter->asTime(1412599260).'
'
; // 14:41:00 echo Yii::$app->formatter->asTime('2014-10-06 12:41:00').'
'
; // 14:41:00 echo Yii::$app->formatter->asTime('2014-10-06 14:41:00 CEST').'
'
; // 14:41:00 echo Yii::$app->formatter->asRaw(1463606983).'
'
;//简单输出输入值 echo Yii::$app->formatter->asText('

hello

'
).'
'
;//将字符串中html标签当做字符串输出 echo Yii::$app->formatter->asHtml('

hello

'
).'
'
;//作为Html的文档输出 echo Yii::$app->formatter->asNtext("

hello.\nword

"
).'
'
;//在字符串中遇到\n可以将它作为换行符实现 echo Yii::$app->formatter->asEmail('[email protected]').'
'
;// 输出: [email protected] echo Yii::$app->formatter->asParagraphs('hello').'
'
;// 值会转换成HTML编码的文本段落,用

标签包裹; echo Yii::$app->formatter->asUrl('www.baidu.com').'
'
;//值会格式化成url的连接 echo Yii::$app->formatter->asImage('my2.jpeg',['alt'=>'图片无法显示']).'
'
;//图片的链接会转化成 echo Yii::$app->formatter->asBoolean(true).'
'
;//输出yes

转自 http://blog.csdn.net/u012979009/article/details/51611013

http://www.kuitao8.com/20141230/3397.shtml

你可能感兴趣的:(yii2)