smarty内部日期函数html_select_date()用法实例分析


Posted in PHP onJuly 08, 2015

本文实例讲述了smarty内部日期函数html_select_date()的用法。分享给大家供大家参考。具体如下:

主要属性:

prefix         //string类型 默认前缀名为"Date_"
start_year     //string类型 默认为当前年份 仍可以用(+/-N)模式表示 如start_year="-10" option就从1998年开始
end_year     //string类型 默认同上 可用(+/-N)模式表示 如end_year="+5" option就到2013为止
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 2000)

<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 使用post,get的一种简洁方式
Apr 25 PHP
php小偷相关截取函数备忘
Nov 28 PHP
兼容性比较好的PHP生成缩略图的代码
Jan 12 PHP
php基础学习之变量的使用
Jun 09 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 PHP
ThinkPHP实现支付宝接口功能实例
Dec 02 PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
May 08 PHP
thinkPHP下的widget扩展用法实例分析
Dec 26 PHP
php自定义函数实现二维数组排序功能
Jul 20 PHP
php 广告点击统计代码(php+mysql)
Feb 21 PHP
解决laravel(5.5)访问public报错的问题
Oct 12 PHP
PHP执行linux命令6个函数代码实例
Nov 24 PHP
php类的定义与继承用法实例
Jul 07 #PHP
php抽象类用法实例分析
Jul 07 #PHP
PHP导入导出Excel代码
Jul 07 #PHP
一张表搞清楚php is_null、empty、isset的区别
Jul 07 #PHP
10条php编程小技巧
Jul 07 #PHP
php实现的任意进制互转类分享
Jul 07 #PHP
Apache服务器下防止图片盗链的办法
Jul 06 #PHP
You might like
松下Panasonic RF-B65电路分析
2021/03/02 无线电
网页游戏开发入门教程二(游戏模式+系统)
2009/11/02 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
discuz目录文件资料汇总
2014/12/30 PHP
PHP中include和require的区别实例分析
2017/05/07 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
Gird事件机制初级读本
2007/03/10 Javascript
Lazy Load 延迟加载图片的 jQuery 插件
2010/02/06 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
容易被忽略的JS脚本特性
2011/09/13 Javascript
非常好用的JsonToString 方法 简单实例
2013/07/18 Javascript
Js操作树节点自动折叠展开的几种方法
2014/05/05 Javascript
node.js中的dns.getServers方法使用说明
2014/12/08 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
JavaScript动态检验密码强度的实现方法
2016/11/09 Javascript
JS实现字符串转驼峰格式的方法
2016/12/16 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
JS实现的合并多个数组去重算法示例
2018/04/11 Javascript
vue中v-cloak解决刷新或者加载出现闪烁问题(显示变量)
2018/04/20 Javascript
JavaScript强制类型转换和隐式类型转换操作示例
2019/05/01 Javascript
详解如何使用nvm管理Node.js多版本
2019/05/06 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
vue列表数据发生变化指令没有更新问题及解决方法
2020/01/16 Javascript
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
Python使用pymysql小技巧
2017/06/04 Python
使用python实现语音文件的特征提取方法
2019/01/09 Python
解决Djang2.0.1中的reverse导入失败的问题
2019/08/16 Python
python 中不同包 类 方法 之间的调用详解
2020/03/09 Python
使用phonegap获取位置信息的实现方法
2017/03/31 HTML / CSS
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
会计专业毕业生自我鉴定
2013/10/29 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
国庆节演讲稿范文2014
2014/09/19 职场文书
银行业务授权委托书
2014/10/10 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书