PHPカレンダーの問題について助けを求めている初心者

WBOY
リリース: 2016-06-23 13:58:06
オリジナル
877 人が閲覧しました





<スタイル>
.tdborder{
border: 1px solid red;
}






$year = 2014;
$month =4;
$total = 0;
$isRN = false;
$month_day = 0;

if($year % 4 == 0 && $year % 100 != 0 || $year % 400 == 0){
$isRN = true;
}

for($i=1900;$i<$year;$i++){
if($i % 4 == 0 && $i % 100 != 0 || $i % 400 == 0){
$total += 366;
}else{
$total += 365;
}
}

for($i=1;$i<=$month;$i++){
switch($i){
ケース1:
ケース 3:
ケース 5:
            ケース 7:
ケース 8:
ケース 10:
ケース 12:
$month_day = 31;
休憩。
ケース 2:
if($isRN){
$month_day = 29;
}
else{
$month_day = 28;

休憩。
デフォルト:
$month_day = 30;
休憩。

}
if($i < $month){
$total += $month_day;
}
}


$temp = $total % 7 + 1;
if($temp == 7){
$temp = 0;
}

echo "<テーブル>";
echo "星期天   
星期一    

星期二     星期三    星期四      >星期五   星期六   > ;";
for($i=1;$i if($i==1){
echo " ";
}
if($temp != 0){
for($j=0;$j echo " ";
}
$temp = 0;
}
echo "".$i."";
if(($total+$i + 1) %7 == 0){
echo "";
} ?



?>
/& Lt;/body & gt;

DIV で今年の曜日と週を表示したいです。助けてください




ディスカッションに返信(解決策)

<?php	//设置为中国时区	date_default_timezone_set('PRC');	//打印出今天是星期几(英文的)	echo date('l');	//打印出明天是星期几	echo date('l',time()+60*60*24);	/*	*因为不知道你所设置的时间格式,上面使用的是时间戳	*如果你是2014-7-8这类格式的话,可以使用strtotime()先转换为时间戳	*/		echo date('l',strtotime('2014-4-19'));	//或者这样	echo date('l',mktime(23,59,59,4,19,2014));		//相信上面说的几个函数应该可以满足你需求了,不行再问,但是自己先去查手册		//获取今天是今年的第几天,其他格式查看上面,是一样的	echo date('z');?>
ログイン後にコピー

<html>    <head>        <title></title>        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>           <style>            .tdborder{                border: 1px solid red;            }        </style>        <script type="text/javascript">            function test(){               var tb = document.getElementsByTagName("table")[0];               var trs = tb.getElementsByTagName("tr");               for(var i=0;i<trs.length;i++){                   var td = trs[i].firstChild;                   var tdl = trs[i].lastChild;                   td.setAttribute("style","color:red");                   tdl.setAttribute("style","color:red");               }                var tds = tb.getElementsByTagName("td");                for(var j=0;j<tds.length;j++){                    tds[j].onmouseover = function(){                        for(var k=0;k<tds.length;k++){                            tds[k].className="";                        }                        this.className="tdborder";                    }                    tds[j].onclick = function(e){                        var div = document.getElementsByTagName("div");                        for(var a=0;a<div.length;a++){                            document.body.removeChild(div[a]);                        }//                        var w = this.cellIndex;//                        alert(w);                        var e = e || window.event;                        var day = this.innerHTML;                        var d = document.createElement("div");                        d.style.border = "1px solid red";                        d.style.position = "absolute";                        d.style.zIndex = 22;                        d.style.left = e.clientX+20 + "px";                        d.style.top = e.clientY+5 + "px";                        d.style.width = "100px";                        d.style.height = "100px";                        d.innerHTML = day+" 第几天:"+this.getAttribute('djt')+" 星期几:"+this.getAttribute('xqj');//自己在美化下 星期几:0表示星期日 2表示星期一                        document.body.appendChild(d);                    }                }            }            window.onload = test;        </script>    </head>    <body>    <?php    $year = 2014;    $month =4;    $total = 0;    $isRN = false;    $month_day = 0;    if($year % 4 == 0 && $year % 100 != 0 || $year % 400 == 0){        $isRN = true;    }    for($i=1900;$i<$year;$i++){        if($i % 4 == 0 && $i % 100 != 0 || $i % 400 == 0){            $total += 366;        }else{            $total += 365;        }    }    $preTotal = $total;//定义一个今年之前的天数    for($i=1;$i<=$month;$i++){        switch($i){            case 1:            case 3:            case 5:            case 7:            case 8:            case 10:            case 12:                $month_day = 31;                break;            case 2:                if($isRN){                    $month_day = 29;                }                else{                    $month_day = 28;                }                break;            default:                $month_day = 30;                break;        }        if($i < $month){            $total += $month_day;        }    }    $temp = $total % 7 + 1;    if($temp == 7){        $temp = 0;    }    echo "<table>";    echo "<tr><th>星期天    </th>        <th>星期一    </th>        <th>星期二    </th>        <th>星期三    </th>        <th>星期四    </th>        <th>星期五    </th>        <th>星期六    </th></tr>";    for($i=1;$i<=$month_day;$i++){        if($i==1){            echo "<tr>";        }        if($temp != 0){            for($j=0;$j<$temp;$j++){                echo "<td></td>";            }            $temp = 0;        }           echo "<td xqj = ".(($total+$i + 1) %7)." djt=".($total+$i - $preTotal).">".$i."</td>";//xqj:表示星期几 如:0=星期日 djt:表示今年的第几天        if(($total+$i + 1) %7 == 0){            echo "</tr><tr>";        }        if($i == $month_day){            echo "</tr>";        }    }    echo "</table><br/>";    ?>    </body></html>
ログイン後にコピー

神様、ありがとう。ありがとうございます

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート