平时我们在写代码中,总是要写一个单独的文件来全局处理常用的数据格式。Yii2.0却很人性化,为我们内置了一套数据格式器。

1.格式化日期和时间

  • Yii::$app->formatter->asDate() - 值被格式化成日期,如 January, 01 2014.
  • Yii::$app->formatter->asTime() - 值被格式化成时间,如 14:23.
  • Yii::$app->formatter->asDatetime() - 值被格式化成日期和时间,如 January, 01 2014 14:23.
  • Yii::$app->formatter->asTimestamp() - 值被格式化成 unix 时间戳 如 1412609982.
  • Yii::$app->formatter->asRelativeTime() - 值被格式化成和当前时间比较的时间间隔并用人们易读的格式,如1 hour ago.

2.格式化数字

  • Yii::$app->formatter->asInteger() - 值被格式化成整型,如 42.
  • Yii::$app->formatter->asDecimal() - 值被格式化成十进制数字并带有小数位和千分位,如 42.123.
  • Yii::$app->formatter->asPercent() - 值被格式化成百分率,如 42%.
  • Yii::$app->formatter->asScientific() - 值被格式化成科学计数型,如4.2E4.
  • Yii::$app->formatter->asCurrency() - 值被格式化成货币格式,如 £420.00.
  • Yii::$app->formatter->asSize() - 字节值被格式化成易读的值,如 410 kibibytes.

3.其他格式器

  • Yii::$app->formatter->asRaw() - 输出值和原始值一样,除了null值会用nullDisplay格式化,这是一个伪格式器;
  • Yii::$app->formatter->asText() - 值会经过HTML编码; 这是GridView DataColumn默认使用的格式;
  • Yii::$app->formatter->asNtext() - 值会格式化成HTML编码的纯文本,新行会转换成换行符;
  • Yii::$app->formatter->asParagraphs() - 值会转换成HTML编码的文本段落,用<p>标签包裹;
  • Yii::$app->formatter->asHtml() - 值会被HtmlPurifier过滤来避免XSS跨域攻击,可传递附加选项如`['html', ['Attr.AllowedFrameTargets' => ['_blank']]];
  • Yii::$app->formatter->asEmail() - 值会格式化成 mailto-链接;
  • Yii::$app->formatter->asImage() - 值会格式化成图片标签;
  • Yii::$app->formatter->asUrl() - 值会格式化成超链接;
  • Yii::$app->formatter->asBoolean() - 值会格式化成布尔型值,默认情况下 true 对应 Yesfalse 对应 No, 可根据应用语言配置进行翻译,可以配置yii\i18n\Formatter::booleanFormat-属性来调整;

Yii2.0数据格式器的更多相关文章

  1. 【Yii系列】Yii2.0基础框架

    缘起 因为一个月的短暂停留,我在给朋友搞事情,所以Yii系列的文章耽搁了很长时间,现在又重拾当时的知识,给大伙好好撸下这一系列的博客 提起Yii,虽然是国外的开发者搞的,但是它的作者是华人,这才是让我 ...

  2. Yii2.0

    Yii2.0基础框架   缘起 因为一个月的短暂停留,我在给朋友搞事情,所以Yii系列的文章耽搁了很长时间,现在又重拾当时的知识,给大伙好好撸下这一系列的博客 提起Yii,虽然是国外的开发者搞的,但是 ...

  3. Yii2.0基础框架

    前言:最近在用php写一个项目的接口,所以需要学习一下Yii的框架,也在这里记录一下. 整体结构 ssets文件夹:assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问p ...

  4. Yii2 查询构建器 QueryBuilder

    查询构造器 QueryBuilder 1.什么是查询构建器 查询构建器也是建立在 DAO 基础之上,可让你创建程序化的.DBMS 无关的 sql 语句,并且这样创建的 sql 语句比原生的 sql 语 ...

  5. yii2.0 如何按需加载并管理CSS样式及JS脚本

    链接:http://www.yiichina.com/tutorial/399 (注:以下为Yii2.0高级应用测试) Yii2.0对于CSS/JS 管理,使用AssetBundle资源包类. 视图如 ...

  6. Yii2.0 安装yii2-queue并在Linux启动守护进程监听消息

    一.什么是yii2-queue? Yii2-queue是Yii2.0 PHP框架下一个消息队列拓展插件,支持基于DB, Redis, RabbitMQ, AMQP, Beanstalk 和 Gearm ...

  7. Yii2.0 高级版安装 windows

    最近在学习yii2.0 在安装高级版的时候遇到一些问题 索性解决了 下面分享一下 一.关于下载 自行百度,在Yii Framework 中文社区 下载专区下载高级应用程序模板(这边下载用电信网络不用下 ...

  8. Yii2.0.7 限制user module登录遇到的问题

    在Yii2.0.6的时候我是在以下文件通过以下方法实现的. frontend/modules/user/Module.php namespace frontend\modules\user; clas ...

  9. yii2.0归档安装方法

    我前几天用composer安装 一直没成功  我就用归档的方法安装了  所以这篇文字只帮助那些用归档方法安装的朋友 Yii是一个高性能的,适用于开发WEB2.0应用的PHP框架. Yii自带了丰富的功 ...

随机推荐

  1. JS-React:目录

    ylbtech-JS-React:目录 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http://ylbt ...

  2. Linux下的RTC子系统

    转自:http://blog.csdn.net/weiqing1981127/article/details/8484268 实时时钟的作用主要是为操作系统提供一个可靠的时间,并在断电下,RTC时钟也 ...

  3. Unity4.0配置

    关于Unity4.0的使用: 一 安装Unity 在程序包管理器控制台输入命令:Istall-Pckage unity.mvc安装后会在App_Start中生成UnityConfig.cs 和Unit ...

  4. csvreader 来操作csv文件

    http://www.cnitblog.com/rd416/archive/2010/07/08/47248.html

  5. 大将军UE分析

    1.过关奖励,先播放特效,在显示奖励 2.鼠标移到人物身上装备,提示双击卸载 3.战场随机事件,出发开启增加buff 4.主线任务简单化,副本支线可玩性增强 5.乌泱泱几十个活动 6.升级的爽快感[升 ...

  6. Linux文件IO操作函数概述

    文件概述 Linux中,一切皆文件.文件为操作系统服务和设备提供了一个简单而一致的接口.这意味着程序完全可以像使用文件那样使用磁盘文件.串行口.打印机和其他设备. 也就是说,大多数情况下,你只需要使用 ...

  7. 51nod - 1420 - 数袋鼠好有趣 - 贪心 - 二分

    https://www.51nod.com/Challenge/Problem.html#!#problemId=1420 一开始乱搞了一发,每个袋鼠二分找最小的能放它的,然后二分的范围从下一个开始保 ...

  8. 在 beforeSend中设置ajax请求的Content-type

    $.ajaxSetup({        beforeSend: function (xhr, settings) {            if (settings.type == "PO ...

  9. Unity2D研究院之自动生成动画、AnimationController、Prefab(一)

    http://www.xuanyusong.com/archives/3243 国庆了,回家了.时刻还是要吃一颗学习的心,在家了也要抽出时间好好学习一下.之前MOMO一直没研究过Unity2D,今天研 ...

  10. git 忽略 Pycharm 中的 workspace.xml 文件

    .gitignore 中要写上 workspace.xml 如果已经不幸之前commit workspace.xml 的话,必须执行以下命令 $ git rm --cached .idea/works ...