使用像这样的PHP ..
for($i = 0; $i < 30; $i++) ...
我有几次渲染的html元素。我想,每次我们到达第六个元素时,它都会添加一个“style:margin-right:0px;”例如。
我的问题是: 我们怎样才能找到第6个元素?
更新:这样可以标记第6个元素,然后标记第12个元素,然后标记第18个元素,然后标记第24个元素,至少标记第30个元素。
提前致谢, MEM
答案 0 :(得分:2)
检查$ i和6的mod是否为0(意味着$ i可以被6整除)。
for($i = 0; $i < 30; $i++) {
if($i % 6 == 0) {
// this is a sixth element
}
...
}
如果您不希望在第一次迭代($ i == 0)时发生这种情况,您还需要将该检查添加到if语句中:
if($i > 0 && $i % 6 == 0){
}
答案 1 :(得分:2)
您可以使用模运算符%
:
for ($i = 0; $i < 30; $i++) {
if ($i % 6 == 5) {
# Add what you want---I don't use PHP much
}
}
模运算符%
将左侧除以右侧,然后报告结果的余数。例如,15 % 6 == 3
,因为15 == 6*2 + 3
。在表达式a % b == c
中,c
的范围从0
到b-1
。如果你在上面的测试中有$i % 6 == 0
,它会设置第一个元素,第七个元素等的样式;这样,它将为第六个元素,第十二个元素等设置样式。这是因为当你在第六个元素上时,$i == 5
和5 % 6
当然是6
。有关详细信息,请查看what Wikipedia has to say about the modulo operation。
答案 2 :(得分:1)
您可以尝试使用模数(%)
if(!($i % 6)) {
// add style
}
或
if(($i % 6) == 0) {
// add style
}
编辑:Kaleb打败我= /