由于工作需要我找了二个时间日期控制,这个不用js只要php实现的,因为要带参考查询操作,感兴趣的朋友可以参考一下,我自己用的是第二个,所以第二个己作了修改.
实例一,代码如下:
代码如下:
class calendar
{
var $month;
var $year;
function __construct($year,$month)
{
$this->year=$year;
$this->month=$month;
}
function endday()
{
$daydate=date(d,mktime(0,0,0,$this->month,35,$this->year));
$endday=35-$daydate;
return $endday;
}
function oneday_week()
{
$oneday_week=date(w,mktime(0,0,0,$this->month,1,$this->year));
return $oneday_week;
}
function title_link()
{
if(!isset($this->month) && !isset($this->year))
{
$this->year = date(y);
$this->month = date(m);
}
$lastmonth=$this->month-1;
$nextmonth=$this->month+1;
$lastyear=$this->year;
$nextyear=$this->year;
if($this->month {
$lastmonth=12;
$nextmonth=$this->month+1;
$lastyear=$this->year-1;
$nextyear=$this->year;
}
elseif ($this->month >= 12)
{
$lastmonth=$this->month-1;
$nextmonth=1;
$lastyear=$this->year;
$nextyear=$this->year+1;
}
$str =
;
$str.=.$this->year.--.$this->month.
;
$str.=>>>
;
return $str;
}
function show_calendar()
{
echo .$this->title_link().
;
$weekarray=array(日,一,二,三,四,五,六);
for($k=0;$k {
echo .$weekarray[$k].
;
}
echo
;
for($i=0;$i {
echo ;
for($j=1;$j {
$math=( $j - $this->oneday_week() ) + 7 * $i;
echo ;
if($math endday() and $math>=1)
{
echo $math;
}
echo
;
}
echo
;
}
echo
;
}
}
$calendar=new calendar($_get['year'],$_get['month']);
$calendar->month=$_get['month'];
$calendar->year=$_get['year'];
$calendar->show_calendar();
?>
实例二,代码如下:
代码如下:
header(content-type:text/html;charset=utf-8);
?>
if(!emptyempty($_get)){
$year = isset($_get['year'])?$_get['year']:date('y');
$month = isset($_get['month'])?$_get['month']:date('m');
$day = isset($_get['day'])?$_get['day']:date('d');
}
if(emptyempty($year)){
$year = date('y');
}
if(emptyempty($month)){
$month = date('m');
}
if(emptyempty($month)){
$days = date('d');
}
$start_weekday = date('w',mktime(0,0,0,$month,1,$year));
//echo $start_weekday;
$days = date('t',mktime(0,0,0,$month,1,$year));
//echo $days;
$week = array('日','一','二','三','四','五','六');
$i = 0;
$k = 1;
$j = 0;
echo '';
echo ''.$year.'年'.$month.'月'.'
';
echo '';
for($i = 0;$i echo ''.$week[$i].' ';
}
echo '
';
echo '';
for($j = 0;$j echo ''.$j.' ';
}
while($k if($k == $day){
echo ''.$k.' ';
}else{
echo ''.$k.' ';
}
if(($j+1) % 7 == 0){
echo '
';
}
$j++;
$k++;
}
while($j % 7 != 0){
echo ''.$j.' ';
$j++;
}
echo '
';
echo '';
echo .' ';
echo .' ';
echo '';
echo '';
echo '';
for($start_year = 1970;$start_year $selected='';
if( $year== $start_year ) { $selected='selected'; }
echo ''.$start_year.''. nt;
}
echo '';
echo '';
for($start_month = 1;$start_month $selected='';
if( $month== $start_month ) { $selected='selected';}
echo ''.$start_month.''. nt;
}
echo '';
/*echo '月';*/
/*echo '';*/
echo '';
echo ' ';
echo .'>>'.' ';
echo .'>'.' ';
echo '
';
echo '
';
function lastyear($year,$month){
$year = $year-1;
return year=$year&month=$month;
}
function lastmonth($year,$month){
if($month == 1){
$year = $year -1;
$month = 12;
}else{
$month--;
}
return year=$year&month=$month;
}
function nextyear($year,$month){
$year = $year+1;
return year=$year&month=$month;
}
function nextmonth($year,$month){
if($month == 12){
$year = $year +1;
$month = 1;
}else {
$month++;
}
return year=$year&month=$month;
}
?>
希望本文所述对大家的php程序设计有所帮助。