Smarty日期时间操作方法示例


Posted in PHP onNovember 15, 2016

本文实例讲述了Smarty日期时间操作方法。分享给大家供大家参考,具体如下:

$smarty = new Smarty;
$smarty->assign('yesterday', strtotime('-1 day'));
$smarty->display('index.tpl');

index.tpl:

{$smarty.now|date_format} //Sep 7, 2009
{$smarty.now|date_format:"%A, %B %e, %Y"}
{$smarty.now|date_format:"%H:%M:%S"}
{$yesterday|date_format}
{$yesterday|date_format:"%A, %B %e, %Y"}
{$yesterday|date_format:"%H:%M:%S"}

Smarty显示格式化当前日期

{$smarty.now|date_format}
{$smarty.now|date_format:"%A, %m %e, %Y"}
{$smarty.now|date_format:"%H:%M:%S"}

smarty符号说明

%Y表示年份

%m表示月份

%d表示日

%A 表示星期几,

%H 表示小时

%M表示分钟

%s表示秒

如果日期是变量,可以:

{$yesterday|date_format:"%A, %B %e, %Y"}
{$yesterday|date_format:"%H:%M:%S"}

smarty内部日期函数html_select_date()使用说明

prefix string类型 默认前缀名为"Date_
start_year string类型 默认为当前年份 仍可以用(+/-N)模式表示 如start_year="-10" option就从1999年开始
end_year string类型 默认同上 可用(+/-N)模式表示 如end_year="+5" option就到2014为止
field_order string类型 默认MDY 即按月日年的顺序 排放select
month_format string类型 默认%B 即显示为January、February、etc. %b格式为简写形式 显示月份的前三个字母 %m格式为数字显示月份
day_format string类型 默认%02d 数字表示从01~31 并且与月份不关联 %b格式为二进制显示格式 很少用

其他属性:

display_days boolean类型 控制day的select是否显示
display_months boolean类型 控制month的select是否显示
display_years boolean类型 控制year的select是否显示
year_as_text boolean类型 true显示为text型年份 false显示为下拉菜单型
reverse_years boolean 类型 true的情况下年份为倒序显示
year_size string 类型 值在大于1的情况下均为下拉菜单型输出 0或1时为上下箭头控制
month_size 同上
day_size 同上

示例如下:

{html_select_date prefix="StartDate" time=$time start_year="-5" end_year="+1" display_days=false}

OUTPUT: (current year is 2009)

<select name="StartDateMonth">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
<option value="4">April</option>
<option value="5">May</option>
<option value="6">June</option>
<option value="7">July</option>
<option value="8">August</option>
<option value="9">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12" selected>December</option>
</select>
<select name="StartDateYear">
<option value="1999">1995</option>
<option value="1999">1996</option>
<option value="1999">1997</option>
<option value="1999">1998</option>
<option value="1999">1999</option>
<option value="2000" selected>2000</option>
<option value="2001">2001</option>
</select>

其他的属性,请自行调试。这个日期处理函数的缺点是day与month不关联,不如用js处理

其中js显示day的函数可以如下定义:

function showdays(year,month){
var day="day";
if(month.value==0){
 document.getElementById(day).length=1;
 return;
}else{
 if(month.value==1||month.value==3||month.value==5||month.value==7||month.value==8||month.value==10||month.value==12){
   document.getElementById(day).length=1;
   createlist(1,32,day);
   return;
 }else if(month.value==2){
 if(year.value%4==0&&year.value%100!=0||year.value%400==0){
  document.getElementById(day).length=1;
  createlist(1,30,day);
  return;
 }else{
  document.getElementById(day).length=1;
  createlist(1,29,day);
  return;
 }
 }else{
 document.getElementById(day).length=1;
 createlist(1,31,day);
 return;
 }
}
}

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP采集相关教程之一 CURL函数库
Feb 15 PHP
PHP之COOKIE支持详解
Sep 20 PHP
php json_encode奇怪问题说明
Sep 27 PHP
PHP 获取远程文件大小的3种解决方法
Jul 11 PHP
php实现的IMEI限制的短信验证码发送类
May 05 PHP
php版微信自动登录并获取昵称的方法
Sep 23 PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
Apr 04 PHP
php使用str_replace替换多维数组的实现方法分析
Jun 15 PHP
PHP面向对象之工作单元(实例讲解)
Jun 26 PHP
laravel 创建命令行命令的图文教程
Oct 23 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
Dec 20 PHP
PHP实现简易用户登录系统
Jul 10 PHP
Fleaphp常见函数功能与用法示例
Nov 15 #PHP
PHP+JS实现的商品秒杀倒计时用法示例
Nov 15 #PHP
php遍历、读取文件夹中图片并分页显示图片的方法
Nov 15 #PHP
thinkphp的dump函数无输出实例代码
Nov 15 #PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
Nov 15 #PHP
PHP递归遍历指定文件夹内的文件实现方法
Nov 15 #PHP
php 判断过去离现在几年的函数(实例代码)
Nov 15 #PHP
You might like
WINDOWS服务器安装多套PHP的另类解决方案
2006/10/09 PHP
php抓取页面的几种方法详解
2013/06/17 PHP
PHP中strtr字符串替换用法详解
2014/11/26 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
javascript时间函数基础介绍
2013/03/28 Javascript
js函数在frame中的相互调用详解
2014/03/03 Javascript
用js读、写、删除Cookie代码续篇
2014/12/03 Javascript
JavaScript实现网页对象拖放功能的方法
2015/04/15 Javascript
node.js 使用ejs模板引擎时后缀换成.html
2015/04/22 Javascript
node.js实现端口转发
2016/04/14 Javascript
jQuery实现div横向拖拽排序的简单实例
2016/07/13 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
2016/08/17 Javascript
Vue学习笔记进阶篇之单元素过度
2017/07/19 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
Vue2.0生命周期的理解
2018/08/20 Javascript
JavaScript常见继承模式实例小结
2019/01/11 Javascript
了解javascript中变量及函数的提升
2019/05/27 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
Ubuntu下创建虚拟独立的Python环境全过程
2017/02/10 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
pandas.loc 选取指定列进行操作的实例
2018/05/18 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
2019/05/29 Python
在Ubuntu 20.04中安装Pycharm 2020.1的图文教程
2020/04/30 Python
学会python自动收发邮件 代替你问候女友
2020/05/20 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
python 如何调用远程接口
2020/09/11 Python
Html5内唤醒百度、高德APP的实现示例
2019/05/20 HTML / CSS
FORZIERI澳大利亚站:全球顶级奢华配饰精品店
2016/12/31 全球购物
美国酒店控股公司:Choice Hotels
2018/06/15 全球购物
德国自然时尚和有机产品购物网站:Waschbär
2019/05/29 全球购物
自主招生自荐书
2013/11/29 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
好媳妇事迹材料
2014/12/24 职场文书
2015年勤工助学工作总结
2015/04/29 职场文书
婚礼男方父母答谢词
2015/09/29 职场文书