我的页面上有一个包含周数的选项,当我选择一个周数时,表标题会更改为该特定周的天数。当我想再次显示整个月时(通过选择周选择默认值),标题不会因某种原因而改变。这是我的代码:
function TableHeader($week, $month, $year){
if($week != "default")
{
for($i=1; $i<=7; $i++)
{
$Datum = date('d', strtotime($year."W".$week.$i))."\n";
echo "<th scope='col' id='CalendarTableHeader' style='text-align:center;'>".$Datum."</th>";
}
}
else
{
for($i = 1; $i <= $numDays; $i++)
{
echo "<th scope='col' id='CalendarTableHeader' style='text-align:center;'>".$i."</th>";
}
}
}
涉及的其他代码部分:
$numDays = monthDays($month, $year);
MonthDays功能(工作)
function monthDays($month, $year) {
return date("t", strtotime($year . "-" . $month . "-01"));
}//
我称之为功能的部分(工作)
if(isset($_GET['week'])){
$week = $_GET['week'];
TableHeader($week, $month, $year);
}
我的问题的一个奇怪的部分是,当我从我的else子句中删除这部分代码时:
for($i = 1; $i <= $numDays; $i++)
{
echo "<th scope='col' id='CalendarTableHeader' style='text-align:center;'>".$i."</th>";
}
它本身就可以正常工作..我希望你能帮助我。
答案 0 :(得分:2)
for($i = 1; $i <= $numDays; $i++)
{
echo "<th scope='col' id='CalendarTableHeader' style='text-align:center;'>".$i."</th>";
}
我在$numDays
函数中找不到TableHeader
变量。
function TableHeader($week, $month, $year, $numDays) {
// Your code here
}
我认为应该是
$numDays = monthDays($month, $year);
if(isset($_GET['week'])){
$week = $_GET['week'];
TableHeader($week, $month, $year, $numDays);
}