我想做的是为每个循环添加一个新的div。
<?php
$f_count = 0; //Is this right?
foreach ($this->items as $item) {
<div>
//stuff
</div>
if ($f_count++ == 1) { //Is this right?
//mystuff1 here
}
if ($f_count++ == 2) { //Is this right?
//mystuff2 here
}
}
?>
因此,每个循环都需要有一个自己的菜单项,该菜单项是在“ mystuff”中创建的。 问候!
答案 0 :(得分:0)
我建议您在foreach循环中跟踪变量。
我发现,如果出现问题,您将了解正在进行的迭代,因此它更易于阅读和调试。
<?php
$counter = 0;
foreach(range(1,10) as $i) {
$counter++;
if($counter === 1) {
// do stuff
}
}
我尚未运行您的代码,但我认为我遇到了问题
$f_count = 0;
看起来不错
if($f_count++ == 1)
将比较f_count
的原始值,然后将其递增,因此在比较后它将变为1。
下一个相同,因此它们可能都等同于true,或者也许其中的任何一个都不起作用...谁知道...只需跟踪并增加
答案 1 :(得分:0)
好像您想要这样的东西,重要的部分是:
if ($key %2 === 1)
检查是1,3,5,还是if ($key %2 === 0)
检查0,2,4,6 ===============
<?php
//$f_count = 0; //No need this
$items = ["first", "second", "third"];//I used $items, you can keep using $this->items
foreach ($items as $key => $item) {
?>
<div>
//stuff
</div>
<?php
if ($key %2 === 1) { //1,3,5,7......
?>
<div>
//mystuff1 here
</div>
<?php
} else { //2,4,6,8
?>
<div>
//mystuff2 here
</div>
<?php
}
}
?>
答案 2 :(得分:0)
谢谢,伙计们,但是问题是在循环中创建一个菜单项,除非您不使用javascript,否则这不是一个聪明的主意,但是在这种情况下,我使用的是javascript。
所以我在php文件中四处搜寻,发现有帮助。
<?php if (count($this->items) <= 1) {
//stuff
} ?>
<?php if (count($this->items) <= 2) {
//stuff
} ?>
<?php if (count($this->items) > 3 //if there are more than 3 items) {
//stuff
} ?>
我清楚地测试了我,看来它可以正常工作。