我正在尝试进行动态分区,用变量更改其id。除此之外,dvision是一个弹出窗口。该部门必须是独一无二的,因为我从数据库中提取信息。到目前为止我所拥有的是:
<?php
$index_map = 4; //this variable is already defined in other part of the document.
//It is just here to specify its value to the readers
$index_data = 1;
while($index_data = $index_map)
{
echo '
<div data-role="popup" id="mapdata'.$index_data.'" class="ui-content" data-theme="d">
<img class="popphoto" src="style/2nd_floor.png"
style="max-height:512px;" alt="Parking_Lot_Map1">
'.$index_data.'
</div>
';
$index_data++;
}
?>
由于某种原因,while循环不执行任何操作,并且之后不显示任何其他html数据。这是一个包含在另一个.php文件中的PHP文档。我不知道为什么while循环不识别变量
答案 0 :(得分:7)
while($index_data = $index_map)
应该是
while($index_data == $index_map)
因为=
设置,==
比较。
答案 1 :(得分:0)
您正在使用单个等于运算符,它始终返回true。为了进行比较,您必须使用==
或===
while($index_data = $index_map)
应该是
while($index_data == $index_map)
答案 2 :(得分:0)
你究竟打算做什么(会评论但不能)?
即使更改为比较==
运算符,如果它在第五行$index_data = 1;
上也不会执行任何操作,因为没有任何内容可以将其更改为4.循环在第一次执行时会说错误,因此正如你所描述的,什么都不会发生。在你的用例中,不需要$ index_data,你可以只使用$ index_map
<?php
echo '
<div data-role="popup" id="mapdata'.$index_map.'" class="ui-content" data-theme="d">
<img class="popphoto" src="style/2nd_floor.png"
style="max-height:512px;" alt="Parking_Lot_Map1">
'.$index_map.'
</div>
';
?>
除非你的代码还有更多内容,否则你没有展示或解释过。