我有一个foreach,它基本上列出了客户端的用户名,密码和包。 现在我有一个完美的运行但它仍然显示一些用户3次由于某种原因,其获取所有信息的数据文件没有客户端3次。 所以由于某种原因,foreach echo显示相同的值或用户3次然后继续。 而且它只有一些用户不是全部。 (数据源中没有重复项)请帮助:)
代码:
foreach ($info->accountswithinfo->account as $realminfo):
$uncapped=$realminfo->isuncapped;
if ($uncapped=='False')
{
$username=$realminfo->username;
$password=$realminfo->password;
$packagename=$realminfo->{'package-name'};
$for=$realminfo->cap;
$cap=Round(("$for") / (1024 * 1024 * 1024), 2);
}
?>
<tr>
<?php
echo '<td class="blockcontentwhite sessionicon">',
'<td class="blockcontentwhite center">' . ("$username") . '</td>',
'<td class="blockcontentwhite center">' . ("$password") . '</td>',
'<td class="blockcontentwhite center">' . ("$cap GB") . '</td>',
'<td class="blockcontentwhite center">' . ("$packagename") . '</td>';
endforeach;
?>
答案 0 :(得分:1)
您正在循环的每次迭代中显示用户名,密码和其他信息。但是,您只需更改$uncapped=='False'
的用户名,密码和其他信息。
在某些情况下,$uncapped
可能是除'False'
以外的值,这会导致用户名,密码和其他信息未设置为新值。然后,您的循环将输出存储在循环的上一次迭代中的值(每当上次$uncapped=='False'
时)。
此问题的一种可能解决方案是将值和输出的赋值包装在相同的if条件中。
答案 1 :(得分:0)
结束我的if语句的}括号应该在我的值的回声
之后'<td class="blockcontentwhite center">' . ("$packagename") . '</td>';
} //like this
endforeach;