Php 基于当前月份隐藏表
这可能是一个相对简单的PHP脚本,但在尝试了一段时间后,我不知所措 我有一系列的表(见下文),我想自动隐藏月份已经过去的表。我正在考虑使用PHP生成嵌入式CSS来实现这一点。我需要一个基本上能做到这一点的脚本:Php 基于当前月份隐藏表,php,html,css,Php,Html,Css,这可能是一个相对简单的PHP脚本,但在尝试了一段时间后,我不知所措 我有一系列的表(见下文),我想自动隐藏月份已经过去的表。我正在考虑使用PHP生成嵌入式CSS来实现这一点。我需要一个基本上能做到这一点的脚本: <?php $x=1; do { echo "div.y!CURRENTYEAR!" echo "$x;," $x=$x+1; } while ($x < CURRENTMONTH) ?> 我基本上希望脚本写下: 2013年1月,2013年2月,2013年3月
<?php $x=1;
do
{
echo "div.y!CURRENTYEAR!"
echo "$x;,"
$x=$x+1;
}
while ($x < CURRENTMONTH)
?>
我基本上希望脚本写下:
2013年1月,2013年2月,2013年3月
以此类推,直到它到达当前月份,这样我就可以隐藏它刚刚列出的所有表。我不确定如何获取一个数值,并将该数字转换为三个字母的月份代码,或者可能有一种更简单的方法,使用各种日期格式代码
有一件事我真的不能做,那就是修改下面的标记
<div class="y2013">
<table class="month jan">...data...</table>
<table class="month feb">...data...</table>
<table class="month mar">...data...</table>
...
<table class="month dec">...data...</table>
</div>
<div class="y2014">
<table class="month jan">...data...</table>
<table class="month feb">...data...</table>
<table class="month mar">...data...</table>
...
<table class="month dec">...data...</table>
</div>
…数据。。。
…数据。。。
…数据。。。
...
…数据。。。
…数据。。。
…数据。。。
…数据。。。
...
…数据。。。
编辑:
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
case 2: return "feb";
case 3: return "mar";
case 4: return "apr";
case 5: return "may";
case 6: return "jun";
case 7: return "jul";
case 8: return "aug";
case 9: return "sep";
case 10: return "oct";
case 11: return "nov";
case 12:
default: return "dec";
}
}
$i = 1;
while ($i < date('m')):
echo "div.y" . date('Y') . " .";
echo int2month($i) . ", ";
$i=$i+1;
endwhile;
echo ".place {display:none!important;}";
?>
我尝试了以下方法但没有成功:
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
case 2: return "feb";
case 3: return "mar";
case 4: return "apr";
case 5: return "may";
case 6: return "jun";
case 7: return "jul";
case 8: return "aug";
case 9: return "sep";
case 10: return "oct";
case 11: return "nov";
case 12: return "nov";
default: return "dec";
}
}
$x=1;
do
{
echo "div.y<?php echo date('Y'); ?>
"
echo int2month($x).",";
$x=$x+1;
}
while ($x < date(n))
?>
我认为最好的方法是在过去的几个月里通过添加一个css类。php
这样您可以设置显示:无代码>到类中
生成的html应如下所示:
HTML:
<div class="y2013">
<table class="month jan passed">...data...</table>
<table class="month feb passed">...data...</table>
<table class="month mar passed">...data...</table>
...
<table class="month dec">...data...</table>
</div>
CSS:
.passed {display: none;}
.y2012, .y2013 .jan, .y2013 .feb, .y2013 .mar, .... {dispaly: none;}
我认为最好的方法是在过去的几个月里通过添加一个css类。php
这样您可以设置显示:无代码>到类中
生成的html应如下所示:
HTML:
<div class="y2013">
<table class="month jan passed">...data...</table>
<table class="month feb passed">...data...</table>
<table class="month mar passed">...data...</table>
...
<table class="month dec">...data...</table>
</div>
CSS:
.passed {display: none;}
.y2012, .y2013 .jan, .y2013 .feb, .y2013 .mar, .... {dispaly: none;}
我认为最好的方法是在过去的几个月里通过添加一个css类。php
这样您可以设置显示:无代码>到类中
生成的html应如下所示:
HTML:
<div class="y2013">
<table class="month jan passed">...data...</table>
<table class="month feb passed">...data...</table>
<table class="month mar passed">...data...</table>
...
<table class="month dec">...data...</table>
</div>
CSS:
.passed {display: none;}
.y2012, .y2013 .jan, .y2013 .feb, .y2013 .mar, .... {dispaly: none;}
我认为最好的方法是在过去的几个月里通过添加一个css类。php
这样您可以设置显示:无代码>到类中
生成的html应如下所示:
HTML:
<div class="y2013">
<table class="month jan passed">...data...</table>
<table class="month feb passed">...data...</table>
<table class="month mar passed">...data...</table>
...
<table class="month dec">...data...</table>
</div>
CSS:
.passed {display: none;}
.y2012, .y2013 .jan, .y2013 .feb, .y2013 .mar, .... {dispaly: none;}
一个简单的函数怎么样
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
//.......
case 11: return "nov";
case 12:
default: return "dec";
}
}
$x=1;
do
{
echo "div.y!CURRENTYEAR!"
echo int2month($x).",";
$x=$x+1;
}
while ($x < CURRENTMONTH)
?>
简单的功能怎么样
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
//.......
case 11: return "nov";
case 12:
default: return "dec";
}
}
$x=1;
do
{
echo "div.y!CURRENTYEAR!"
echo int2month($x).",";
$x=$x+1;
}
while ($x < CURRENTMONTH)
?>
简单的功能怎么样
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
//.......
case 11: return "nov";
case 12:
default: return "dec";
}
}
$x=1;
do
{
echo "div.y!CURRENTYEAR!"
echo int2month($x).",";
$x=$x+1;
}
while ($x < CURRENTMONTH)
?>
简单的功能怎么样
<?php
function int2month($int)
{
switch($int)
{
case 1: return "jan";
//.......
case 11: return "nov";
case 12:
default: return "dec";
}
}
$x=1;
do
{
echo "div.y!CURRENTYEAR!"
echo int2month($x).",";
$x=$x+1;
}
while ($x < CURRENTMONTH)
?>
谢谢hugo,但不幸的是我无法轻松编辑HTML标记。它是由一个相当复杂的第三方工具生成的,我没有提到的是,这些页面中大约有30个都有相同的HTML日历标记,都由几十个人不断更新。@Nathan S你能用php生成css文件吗?否则你必须使用javascriptI我可以使用PHP生成嵌入的CSS,所以如果我跟随你,结果也是一样。是的,你必须使用PHP生成选择器这就是我要做的,但我不确定如何让PHP以正确的格式插入正确的月份。谢谢hugo,但不幸的是我无法轻松编辑HTML标记。它是由一个相当复杂的第三方工具生成的,我没有提到的是,这些页面中大约有30个都有相同的HTML日历标记,都由几十个人不断更新。@Nathan S你能用php生成css文件吗?否则你必须使用javascriptI我可以使用PHP生成嵌入的CSS,所以如果我跟随你,结果也是一样。是的,你必须使用PHP生成选择器这就是我要做的,但我不确定如何让PHP以正确的格式插入正确的月份。谢谢hugo,但不幸的是我无法轻松编辑HTML标记。它是由一个相当复杂的第三方工具生成的,我没有提到的是,这些页面中大约有30个都有相同的HTML日历标记,都由几十个人不断更新。@Nathan S你能用php生成css文件吗?否则你必须使用javascriptI我可以使用PHP生成嵌入的CSS,所以如果我跟随你,结果也是一样。是的,你必须使用PHP生成选择器这就是我要做的,但我不确定如何让PHP以正确的格式插入正确的月份。谢谢hugo,但不幸的是我无法轻松编辑HTML标记。它是由一个相当复杂的第三方工具生成的,我没有提到的是,这些页面中大约有30个都有相同的HTML日历标记,都由几十个人不断更新。@Nathan S你能用php生成css文件吗?否则你必须使用javascriptI我可以使用PHP生成嵌入式CSS,所以如果我跟随你,结果也是一样。是的,你必须使用PHP生成选择器这就是我试图做的,但我不确定如何让PHP以正确的格式插入正确的月份。这不起作用,因为我改变了它。我做错什么了吗?我已经试着把我的结果贴在原来的帖子上了。有什么想法吗?谢谢@Christine,我最后稍微修改了你的代码(while语句,而不是do-while等等)。谢谢!这不起作用,因为我改变了它。我做错什么了吗?我已经试着把我的结果贴在原来的帖子上了。有什么想法吗?谢谢@Christine,我最后稍微修改了你的代码(while语句,而不是do-while等等)。谢谢!这不起作用,因为我改变了它。我做错什么了吗?我已经试着把我的结果贴在原来的帖子上了。有什么想法吗?谢谢@Christine,我最后稍微修改了你的代码(while语句,而不是do-while等等)。谢谢!这不起作用,因为我改变了它。我做错什么了吗?我已经试着把我的结果贴在原来的帖子上了。有什么想法吗?谢谢@Christine,我最后稍微修改了你的代码(while语句,而不是do-while等等)。谢谢!