yii\i18n\Formatter是一個格式化的小助手,對於我們實作前端使用者友善的顯示有非常大的幫助。
一、常用的屬性
(1)$dateFormat
日期格式:yyyy-MM-dd,或"short", "medium ", "long", or "full"
(2)$datetimeFormat
#具體時間格式:yyyy-MM-dd HH:mm:ss
(3) $locale
區域位置,如果沒有設置,將使用yii\base\Application::$language,按照這一區域的習慣顯示格式
(4)$defaultTimeZone
#時區,預設UTC
要使用formatter需要在config中的設定:
'formatter' => [ 'dateFormat' => 'yyyy-MM-dd', 'datetimeFormat' => 'yyyy-MM-dd HH:mm:ss', 'decimalSeparator' => ',', 'thousandSeparator' => ' ', 'currencyCode' => 'CNY', ],
二、格式化
echo Yii::$app->formatter->asRelativeTime(1463632983).'<br/>'; // 几天前 几小时前 echo Yii::$app->formatter->asDatetime(1463606983).'<br>'; // 2015-6-16 11:51:43 echo Yii::$app->formatter->asDatetime('now').'<br>'; // 也可处理null值的输出显示: echo Yii::$app->formatter->asDate(null).'<br>'; // 输出: (未设置) echo Yii::$app->formatter->asPercent(0.125, 2).'<br>'; // 输出: 12.50% echo Yii::$app->formatter->asTimestamp('now').'<br>';//输出时间戳 echo Yii::$app->formatter->asTime(1412599260).'<br>'; // 14:41:00 echo Yii::$app->formatter->asTime('2014-10-06 12:41:00').'<br>'; // 14:41:00 echo Yii::$app->formatter->asTime('2014-10-06 14:41:00 CEST').'<br>'; // 14:41:00 echo Yii::$app->formatter->asRaw(1463606983).'<br>';//简单输出输入值 echo Yii::$app->formatter->asText('<h3>hello</h3>').'<br>';//将字符串中html标签当做字符串输出 echo Yii::$app->formatter->asHtml('<h3>hello</h3>').'<br>';//作为Html的文档输出 echo Yii::$app->formatter->asNtext("<h3>hello.\nword</h3>").'<br>';//在字符串中遇到\n可以将它作为换行符实现 echo Yii::$app->formatter->asEmail('cebe@example.com').'<br>';// 输出: <a href="mailto:cebe@example.com"> cebe@example.com</a> echo Yii::$app->formatter->asParagraphs('hello').'<br>';// 值会转换成HTML编码的文本段落,用<p>标签包裹; echo Yii::$app->formatter->asUrl('www.baidu.com').'<br>';//值会格式化成url的连接 echo Yii::$app->formatter->asImage('my2.jpeg',['alt'=>'图片无法显示']).'<br>';//图片的链接会转化成<img src= 'my.jpg'/> echo Yii::$app->formatter->asBoolean(true).'<br>';//输出yes
PHP中文網,有大量免費的Yii入門教學,歡迎大家學習!
以上是yii2 如何格式化數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!