动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   PHP → 阅读文章

 一个简单编程思想在php与java中的实现比较:日期类!

作者来源: 
阅读 1335 人次 , 2006-4-18 17:06:00 


   以前用PHP时写了一个简单的class,功能主要是解决,大量页面上需要显示下拉列表框选择年/月/日/周之类的。希望对大家学习PHP和java能有帮助。

php的实现如下:
getCurrentDate.class.php
<?php
/*
* 功能:生成下拉列表(年/月/日/周为当前值)
* 程序员:xiangli
* 日期:2003-01-19
*/

#---------------------------------------------------#
# 修改:2003-03-18                                  #
# 修改原因:添加了周的生成                            #
#-------------------------------------------------#

class getCurrentDate{
  var    $Years = 2002;
  var    $Months = 12;
  var    $Days = 31;
  var    $Weeks = 52;
  
    /*获得年的下拉列表*/
    function getCurrentYear()
    {
        for ($i = Date('Y'); $i >= $this->Years; $i--)
        {
            echo "<option value='$i'>{$i}年</option>\n";
        }
    }

    /*获得月的下拉列表*/
    function getCurrentMonth()
    {
        for ($i = 1; $i <= $this->Months; $i++)
        {
            ($i<10)?($m="0".$i):($m=$i);            
            if($i == date('m'))
                echo "<option value='$m' selected>{$m}月</option>\n";
            else
                echo "<option value='$m'>{$m}月</option>\n";
        }
    }

    /*获得日的下拉列表*/
    function getCurrentDay()
    {
        for ($i = 1; $i <= $this->Days; $i++){
            if($i == date('d'))
                echo "<option value='$i' selected>{$i}日</option>\n";
            else
                echo "<option value='$i'>{$i}日</option>\n";
        }
    }
    
    /*获得周的下拉列表*/
    function getCurrentWeek()
    {
        for ($i = 1; $i <= $this->Weeks; $i++){
            if($i == date('W'))
                echo "<option value='$i' selected>{$i}周</option>\n";
            else
                echo "<option value='$i'>{$i}周</option>\n";
        }
    }    
}
?>

调用如下:
includ("../public/getCurrentDate.class.php");
$getCurrentDate = net getCurrentDate();
<select name ="xxxxx">
<?=$getCurrentDate->getCurrentYear()?>
</select>
//////////////////////////////////////////////////////////


java的实现方法:
getCurrentDate.java
/*
* 功能:生成下拉列表(年/月/日/周为当前值)
* 程序员:xiangli
* 日期:2003-01-19
*/

// #---------------------------------------------------#
// # 修改:2003-03-18                                 #
// # 修改原因:添加了周的生成                         #
// #-------------------------------------------------#

import java.io.*;
import java.util.*;
import java.text.*;

public class getCurrentDate {
  public int Years = 2002;
  public int Months = 12;
  public int Days = 31;
  public int Weeks = 52;
  Date myDate = new Date();
  SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd w");
  
    /*获得年的下拉列表*/
    public String getCurrentYear()
    {
        String Content = "";
        for (int i =  Integer.parseInt(formatter.format(myDate).toString().substring(0, 4)); i >= Years; i--)
        {
            Content += "<option value='" + i + "'>" + i + "年</option>\n";
             
        }
        return Content;
    }

    /*获得月的下拉列表*/
    public String getCurrentMonth()
    {
        String m;
        String Content = "";
        
        for (int i = 1; i <= Months; i++)
        {
            m=i<10?("0" + i):Integer.toString(i);
            if(i == Integer.parseInt(formatter.format(myDate).toString().substring(5, 7)))
                Content += "<option value='" + m + "' selected>" + m + "月</option>\n";
            else
                Content += "<option value='" + m + "'>" + m + "月</option>\n";
        }
        return Content;
    }

    /*获得日的下拉列表*/
    public String getCurrentDay()
    {
        String Content = "";
        String m;
        
        for (int i = 1; i <= Days; i++){
            m=i<10?("0" + i):Integer.toString(i);
            if(i == Integer.parseInt(formatter.format(myDate).toString().substring(8, 10)))
                Content += "<option value='" + m + "' selected>" + m + "日</option>\n";
            else
                Content += "<option value='" + m + "'>" + m + "日</option>\n";
        }
        return Content;
    }
    
    /*获得周的下拉列表*/
    public String getCurrentWeek()
    {
        String Content = "";
        String m;
        
        for (int i = 1; i <= Weeks; i++){
            m=i<10?("0" + i):Integer.toString(i);
            if(i == Integer.parseInt(formatter.format(myDate).toString().substring(11)))
                Content += "<option value='" + m + "' selected>" + m + "周</option>\n";
            else
                Content += "<option value='" + m + "'>" + m + "周</option>\n";
        }
        return Content;
    }    
}


调用方法:
<jsp:useBean id="getCurrentDate" scope="session" class="getCurrentDate" />
<select name="Years">
<%=getCurrentDate.getCurrentYear()%>
</select>
<select name="Months">
<%=getCurrentDate.getCurrentMonth()%>
</select>
<select name="Days">
<%=getCurrentDate.getCurrentDay()%>
</select>
<select name="Weeks">
<%=getCurrentDate.getCurrentWeek()%>
</select>    
 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:这有一个测试页面执行时间的类:
· 下一篇:PHP中上传大体积文件时需要的设置:
· 建一个XMLHttpRequest对象池
· 一个分页导航类示例
· 让你同时上传 1000 个文件
· DOS下一些很有用的网络命令
· 中文php.ini上


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077