while(fetching){
if($x != $y){
echo "<div> Something </div>
<div>";
}
$x = $y;
echo "<div> Something Else </div>";
if($x != $y) {echo "</div>";} //The Problem Here
}
在我的代码中,我根本无法关闭我的元素,结尾上方的所有元素都在彼此内部组合,元素在所有元素的末尾都被关闭,我该如何解决?我试着去
if($x != $y){
echo "<div> Something </div>
<div>}
$x = $y;
echo "<div> Something Else </div>";
}
if($x != $y) {</div>";}
但也没有用。
我想要完成的是
<div> Something </div>
<div>
<div> Something Else </div>
<div> Something Else </div>
</div>
<div> Something </div>
<div>
<div> Something Else </div>
<div> Something Else </div>
</div>
总是会发生什么
<div> Something </div>
<div>
<div> Something Else </div>
<div> Something Else </div>
<div> Something </div>
<div>
<div> Something Else </div>
<div> Something Else </div>
</div>
</div>
答案 0 :(得分:0)
虽然$x == $y
代码正好在下面:if($x != $y) {</div>";}
永远不会运行。
你有
$x = $y;
意思是,总是忽略关闭</div>
,必须在if($x != $y) {..}
的条件语句中运行。
这是逻辑错误。
无论是什么,我都没有看到该任务的重点。删除它,您将获得所需的结束div
标记。
答案 1 :(得分:0)
$x = $y;
echo "<div> Something Else </div>";
if($x != $y) {echo "</div>;} //The Problem Here
首先,if语句永远不会运行,因为您已将$x
分配给$y
。
此外,在您的第一个if语句中,您有一个迷路<div>
标记。
我不确定您尝试完成的操作,但删除了while循环中的第二个<div>
标记。
如果你想要一切都在一个div中,那么在while循环之前打开一个div并在循环之后关闭它
echo "<div>";
while(fetching)
{
if($x != $y)
{
echo "<div> Something </div>";
}
}
echo "</div>";
答案 2 :(得分:0)
我想你想要这样的东西
$idx = 0;
while(fetching){
if($idx % 3 == 0 && $idx != 0){
echo "</div>";
}
if($idx % 3 == 0){
echo "<div> Something </div>";
echo "<div>";
} else {
echo "<div> Something Else </div>";
}
$idx++;
}
此代码每隔第1,第4,第7 ......第n次迭代打印'Something'标记,包括'Something Else'元素的开放标记。
在第4次,第7次......第n次迭代时,将打印结束标记。
在所有其他迭代中,打印“其他东西”。