`
vtrtbb
  • 浏览: 362400 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

smary 格式化

阅读更多
date_format
    用来格式化一个日期和时间为给出的strftime()格式。传递给Smarty的日期可以是Unix的时间戳,MySQL时间戳,或者任何包含年月日的字符串,可以为PHP的strtotime()解析即可。设计者然后可以用date_format来完全控制日期的格式。如果传递给date_format的日期是空的并指定了第二个参数,那么第二个参数将作为日期进行格式化。 

参数位置 类型 必需? 缺省 描述
1 string No %b %e, %Y 输出日期的格式。
2 string No n/a 如果第一个参数为空,则使用该参数为缺省日期。

 

注意:自从Smarty-2.6.10开始,传递给date_format的数字值总是被理解为一个Unix时间戳(除了后面要讲到的MySQL时间戳)。

在Smarty-2.6.10之前,如果一个数字字符串(如YYYYMMDD)可以由PHP的strtotime()解析,有时会被解析为日期字符串而不是时间戳(取决于strtotime()的底层实现机制)。

唯一的例外是MySQL时间戳。它们只包含数字,14位长(YYYYMMDDHHMMSS),MySQL时间戳优先于Unix时间戳。

程序员注解:date_format其实就是PHP的strftime()函数的封装。PHP编译的系统上strftime()函数决定了转换子可用的数量。可用的转换子的完整列表可以检查系统的man手册。


例子5-8. date_format

<?php

$config['date'] = '%I:%M %p';
$config['time'] = '%H:%M:%S';
$smarty->assign('config', $config);
$smarty->assign('yesterday', strtotime('-1 day'));

?> 

    模板使用$smarty.now来获得当前日期:

{$smarty.now|date_format}
{$smarty.now|date_format:"%D"}
{$smarty.now|date_format:$config.date}
{$yesterday|date_format}
{$yesterday|date_format:"%A, %B %e, %Y"}
{$yesterday|date_format:$config.time}
 

    上述代码将输出:

Jan 1, 2022
01/01/22
02:33 pm
Dec 31, 2021
Monday, December 1, 2021
14:33:00
 
 

    date_format转换子如下:


%a - 基于当前位置的星期名的简写

%A - 基于当前位置的星期名的全写

%b - 基于当前位置的月份名的简写

%B - 基于当前位置的月份名的全写

%c - 基于当前位置的优先日期和时间呈现

%C - 世纪的值(年份除以100并取整,范围在00到99之间)

%d - 数字表示的日期(01到31)

%D - 等于%m/%d/%y

%e - 数字表示的日期,单个数字将有前导空格(1到31)

%g - 本世纪内基于周数的年份[00,99]

%G - 基于周数的年份,包含世纪数[0000,9999]

%h - 等于%b

%H - 使用24小时制的小时数(00到23)

%I - 使用12小时制的小时数(01到12)

%j - 一年中的第几天(001到366)

%k - 24小时的小时数,一位数时有前导空白(0到23)

%l - 12小时的小时数,一位数时有前导空白(1到12)

%m - 数字表示的月份(01到12)

%M - 数字表示的分钟

%n - 换行字符

%p - 根据给出的时间值为`am'或`pm',或者是基于当前位置的字符串

%r - 以a.m.或p.m.表示的时间

%R - 24小时制的时间

%S - 秒数

%t - 制表符号

%T - 当前时间,等同于%H:%M:%S

%u - 以数字表示的星期,1代表星期一

%U - 当前年份的星期数,当年的第一个星期天作为第一周的第一天

%V - 根据ISO 8601:1988得出的当前年份的星期数,范围从01到53。第一周必须至少在当年有4天,而星期一是该周的第一天。

%w - 星期几,0表示星期天

%W - 当前年份的星期数,当年的第一个星期一作为第一周的第一天

%x - 不含时间的基于当前位置的日期表示

%X - 不含日期的基于当前位置的时间表示

%y - 不含世纪的年份(00到99)

%Y - 包含世纪的年份

%Z - 时区名或其缩写

%% - `%'字符
//=========================================default==========================================================
default
    用来设置一个变量的缺省值。如果该变量被取消设置或是空字符串,则将打印出缺省值。缺省值有一个参数。


注意:如果设置了error_reporting(E_ALL),则未声明的变量在模板中将总是抛出一个错误。该函数用来替换空字符串或零长度的字符串。

 

参数位置 类型 必需? 缺省 描述
1 string No empty 如果变量为空,则输出该值。


例子5-9. default

<?php

$smarty->assign('articleTitle', 'Dealers Will Hear Car Talk at Noon.');
$smarty->assign('email', '');

?> 

    模板为:

{$articleTitle|default:'no title'}
{$myTitle|default:'no title'}
{$email|default:'No email address available'}
 

    输出为:

Dealers Will Hear Car Talk at Noon.
no title
No email address available
//=======================================escape用来编码/转义一个变量为HTML,URL,单引号,16进制,16进制码,JavaScript和Email。缺省时为HTML转义。===================================================
  用来编码/转义一个变量为HTML,URL,单引号,16进制,16进制码,JavaScript和Email。缺省时为HTML转义。


参数位置 类型 必需? 可选值 缺省 描述
1 string No html,htmlall,url,urlpathinfo,quotes,hex,hexentity,javascript,mail  html 使用的转义格式
2 string No ISO-8859-1,UTF-8以及任何由htmlentities()支持的字符集 ISO-8859-1 传递给htmlentities()的字符集编码


例子5-10. escape

<?php

$smarty->assign('articleTitle',
                "'Stiff Opposition Expected to Casketless Funeral Plan'"
                );
$smarty->assign('EmailAddress','smarty@example.com');

?> 

    模板为:

{$articleTitle}
{$articleTitle|escape}
{$articleTitle|escape:'html'}    {* 转义& " ' < > *}
{$articleTitle|escape:'htmlall'} {* 转义所有的HTML实体 *}
{$articleTitle|escape:'url'}
{$articleTitle|escape:'quotes'}
<a href="mailto:{$EmailAddress|escape:"hex"}">{$EmailAddress|escape:"hexentity"}</a>
{$EmailAddress|escape:'mail'}    {* 将EMAIL转换为文本 *}
{'mail@example.com'|escape:'mail'}
 

    输出为:

'Stiff Opposition Expected to Casketless Funeral Plan'
&#039;Stiff Opposition Expected to Casketless Funeral Plan&#039;
&#039;Stiff Opposition Expected to Casketless Funeral Plan&#039;
&#039;Stiff Opposition Expected to Casketless Funeral Plan&#039;
%27Stiff+Opposition+Expected+to+Casketless+Funeral+Plan%27
\'Stiff Opposition Expected to Casketless Funeral Plan\'
<a href="mailto:%62%6f%..snip..%65%74">&#x62;&#x6f;&#x62..snip..&#x65;&#x74;</a>
smarty [AT] example [DOT] com
mail [AT] example [DOT] com
 
 
例子5-11. 其它示例

    PHP函数可以用作修饰符,只要$security允许。

{* "rewind"参数记录了当前位置 *}
<a href="{$SCRIPT_NAME}?page=foo&rewind={$smarty.server.REQUEST_URI|urlencode}">click here</a>
 

    该代码段可以用于Email,请同时参见{mailto}

{* Email地址被打乱 *}
   <a href="mailto:{$EmailAddress|escape:'hex'}">{$EmailAddress|escape:'mail'}</a>
//==================================indent每行的字符串进行缩进,缺省为4个空格==============================================
indent
    每行的字符串进行缩进,缺省为4个空格。作为一个可选参数,你可以制定缩进字符的个数。作为可选的第二个参数,可以指定缩进用的字符,如用"\t"作为制表符。


参数位置 类型 必需? 缺省 描述
1 integer No 4 指定缩进多少个字符
2 string No 空格 用来缩进的字符


例子5-12. indent

<?php

$smarty->assign('articleTitle',
                'NJ judge to rule on nude beach.
Sun or rain expected today, dark tonight.
Statistics show that teen pregnancy drops off significantly after 25.'
                );
?> 

    模板为:

{$articleTitle}

{$articleTitle|indent}

{$articleTitle|indent:10}

{$articleTitle|indent:1:"\t"}
 

输出为:

NJ judge to rule on nude beach.
Sun or rain expected today, dark tonight.
Statistics show that teen pregnancy drops off significantly after 25.

    NJ judge to rule on nude beach.
    Sun or rain expected today, dark tonight.
    Statistics show that teen pregnancy drops off significantly after 25.

          NJ judge to rule on nude beach.
          Sun or rain expected today, dark tonight.
          Statistics show that teen pregnancy drops off significantly after 25.

        NJ judge to rule on nude beach.
        Sun or rain expected today, dark tonight.
        Statistics show that teen pregnancy drops off significantly after 25.

 

分享到:
评论

相关推荐

    百卓SMART系列格式化硬盘操作详细步骤

    ### 百卓SMART系列格式化硬盘操作详细步骤 #### 知识点一:背景与目的 - **背景**:北京百卓网络技术有限公司所生产的SMART系列设备,在进行软件版本升级时,为了支持新版本中增加的图形报表等功能,通常需要进行...

    S7-200SMART标准化程序(含MODBUS RTU轮询+可重复调用子程序+注释说明使用方法).rar

    《S7-200SMART标准化程序:MODBUS RTU轮询与子程序的应用解析》 在工业自动化领域,西门子的S7-200SMART系列PLC以其高效、灵活的特点广受青睐。本资源集合了一份针对S7-200SMART的标准化程序,其中包含了MODBUS RTU...

    u盘检测格式化工具

    标题中的“u盘检测格式化工具”是指一种专门用于检查USB闪存盘(通常称为U盘)健康状况并对其进行格式化的软件。这类工具的主要目的是帮助用户解决U盘中出现的各种问题,例如数据丢失、无法读取、病毒感染或系统错误...

    浦科特安全格式化软件

    标题中的“浦科特安全格式化软件”是指浦科特公司推出的一款专为固态硬盘设计的安全格式化工具。浦科特是一家知名的存储设备制造商,其产品包括固态硬盘(SSD)等,这款软件是他们为了帮助用户更好地管理和维护其...

    VB6.0格式化代码.

    smidt.exe用于使VB6编程环境支持代码格式化。安装后在VB环境中点击右键将出现“Smart Indent”项,它可使代码自动缩进。常用其中“Indent Module”等项。速度快,功能强。 注:本人亲测可用!!!!(支持Win10)

    硬盘低级格式化全攻略

    硬盘低级格式化,简称“低格”,是计算机领域中对硬盘进行初始化的一种操作,它直接在硬盘的物理层上划分磁道、扇区,并设置相应的参数,为数据存储做准备。这一过程对于理解硬盘的工作原理和解决某些特定问题非常...

    Smart Indent——VB代码自动缩进工具

    "Smart Indent——VB代码自动缩进...总之,"Smart Indent"是VB开发者的得力助手,它简化了代码格式化的过程,提升了开发效率,并且增强了代码的可读性。对于初学者和经验丰富的程序员来说,都是一个非常有价值的工具。

    三星硬盘专修能清smart

    在压缩包中的“三星专修.exe”可能是一个专门针对三星硬盘的维修工具,它可以执行上述的一些操作,如查看SMART状态、管理缺陷表以及进行低级格式化。使用这类工具需要谨慎,因为误操作可能导致数据丢失或者硬件损坏...

    (大型网站排名第一文件找回器,格式化都能找回)Smart Data Recovery V4.1 汉化版

    (大型网站排名第一文件找回器,格式化都能找回)Smart Data Recovery V4.1 汉化版 (大型网站排名第一文件找回器,格式化都能找回)Smart Data Recovery V4.1 汉化版 (大型网站排名第一文件找回器,格式化都能找回)...

    分区格式化软件Smart Fdisk

    Sfdisk实现多系统引导的基础在于为硬盘建立多C盘,然后把多个操作系统安装在不同的C盘上,在计算机启动时利用Sfdisk激活不同的C盘即可进入相应的操作系统。这方法虽然很简单但却是最安全可靠的,因为在硬盘上是真正...

    宇瞻U盘格式化工具

    - **SMART(Self-Monitoring, Analysis, and Reporting Technology)**:一种硬盘自我监测、分析和报告技术,某些格式化工具可能包含类似功能,用于检测U盘健康状况。 总的来说,宇瞻U盘格式化工具是一款针对特定...

    希捷12代清空smart指令

    3. **数据保护**:虽然清空SMART指令不会直接删除用户数据,但在某些情况下(如准备进行低级格式化等操作前),执行该指令可以减少意外数据丢失的风险。 #### 四、注意事项 1. **数据风险**:根据描述,“12代清空...

    力控西门子200SMART驱动

    总结来说,力控西门子200SMART驱动是连接力控监控软件与西门子S7-200SMART PLC的关键组件,通过正确安装和配置,能够实现高效的自动化监控和数据管理。在实际应用中,理解驱动的工作原理和配置步骤,以及熟悉故障...

    smart200 3D模型

    SMART200通常指的是西门子SIMATIC SMART 200系列的自动化控制器,它广泛应用于工业自动化领域。在这个场景中,3D模型可能是指为SMART200设计的组件或系统的三维可视化表示,便于在工程设计阶段进行布局和模拟。 ...

    S7-200SMART PLC清除密码的具体方法和步骤.docx

    S7-200SMART PLC是西门子推出的一款小型可编程逻辑控制器,适用于各种自动化应用。如果在使用过程中忘记了密码,从S7-200 SMART V2.3版本开始,提供了两种方法来清除密码并恢复为出厂默认设置。 **方法一:使用...

    smart200TCP通信_SMART200TCPIP_

    5. **编程实例**:通过实际的编程案例,实践TCP通信的编程逻辑和数据格式化。 6. **协议解析**:理解TCP/IP协议的基本原理,包括TCP头部的结构和意义,以便更好地理解通信过程。 通过以上内容的学习,你可以有效地...

    S7-200_smart cpu CAD产品图

    在压缩包的文件名称列表中,“S7-200_SMART_CPU.dwg”是一个AutoCAD的DWG文件,这是CAD软件的标准格式,用于存储二维和三维的设计数据。打开这个文件,用户可以查看S7-200 SMART CPU的详细设计,包括其机械结构、...

    安卓使用smartTable生成表格

    对于大量数据的展示,SmartTable通常采用虚拟化技术,只渲染可视区域的单元格,以提高性能和减少内存消耗。同时,合理地缓存数据和复用视图也是提升性能的关键。 总之,SmartTable是安卓开发中处理表格数据的强大...

    VB_VBA代码自动缩进插件-Smart Indenter

    总之,Smart Indenter插件是VB和VBA开发者的得力助手,通过自动代码缩进和格式化,它可以帮助开发者保持代码的清晰和一致性,提升代码质量和工作效率。如果你经常处理VB或VBA项目,这款插件无疑是不可或缺的工具。

    smartTable.zip

    2. **多格式支持**:它可以处理不同类型的数据,如文本、图片、进度条等,同时支持自定义单元格视图,满足多样化的显示需求。 3. **滑动操作**:smartTable支持横向和纵向滑动,且滑动过程流畅,提升了用户交互体验...

Global site tag (gtag.js) - Google Analytics