雅安论坛
标题:
请教关于在PHP 中foreach嵌套if else的时候 else所有数据都出来了,在while中嵌套了
[打印本页]
作者:
匿名
时间:
2020-6-4 12:50
标题:
请教关于在PHP 中foreach嵌套if else的时候 else所有数据都出来了,在while中嵌套了
请教关于在PHP 中foreach嵌套if else的时候 else所有数据都出来了,和平时if else不一样的问题,我是在一个while中,嵌套了foreach,代码如下,请站长帮助下,多谢
while($row=mysqli_fetch_assoc($rs)){
echo "<tr>";
echo '<td>'.$row['id'].'</td>';
echo '<td>'.$row['name'].'</td>';
foreach ($fl as $v){
if (($v['id']==$row['flid'])){
echo '<td>'.$v['name'].'</td>';
复制代码
单数输出与的结果是所有else都有了,请不忙帮看看,多谢
作者:
未命名
时间:
2020-6-4 13:00
这个问题可以换一个思维来解决,在外层有一个while循环,现在问题出在了else必须全部跑完数组,才能else,所有问题出在这里,解决这个问题就好了
while($row=mysqli_fetch_assoc($rs)){
echo "<tr>";
echo '<td>'.$row['id'].'</td>';
echo '<td>'.$row['name'].'</td>';
foreach ($fl as $v){
if (($v['id']==$row['flid'])== ture){
echo '<td>'.$v['name'].'</td>';
$exist = true;
break;
}
}
if(!$exist) {
echo '<td>'.'未分类'.'</td>';
}
复制代码
重点在第一个if中传入
$exist = true;这个值,在外面的时候判断是否存在,不存在的话就else就可以,我感觉应该是这样的吧,你在试试呢
欢迎光临 雅安论坛 (https://www.yaanbbs.net/)
Powered by Discuz! X3.4