所以我尝试使用while循环遍历一堆数组。 所以它不能像这样工作,它是如何工作的?
while($x<$sQuery($SERVER)['number'])
{
$o = $o . "<Server>
<Name>".$sQuery($SERVER)[$x]['name']."</Name>
<DNS>".$sQuery($SERVER)[$x]['ip']."</DNS>
<Lat>0</Lat>
<Long>0</Long>
<Usage>-1</Usage>
<RankRequired>0</RankRequired>
</Server>"
x++;
}
}
错误在这一行:
<Name>".$sQuery($SERVER)[$x]['name']."</Name>
<DNS>".$sQuery($SERVER)[$x]['ip']."</DNS>
[$x]
是不允许的,我不知道如何循环使用它们,任何想法?
答案 0 :(得分:2)
我会这样重写: -
$s = $sQuery($SERVER);
for($i=0; $i<$s['number']; $i++)
{
$o .= "<Server><Name>".$s[$i]['name']."</Name>
<DNS>".$s[$i]['ip']."</DNS><Lat>0</Lat><Long>0</Long><Usage>-1</Usage>
<RankRequired>0</RankRequired></Server>";
}
答案 1 :(得分:1)
所以,我回答了我自己的问题(有点)。 评论对我帮助很大。 事情是..我应该去睡觉,因为我太累了编程。
function ListServersXML($SERVER)
{
$x = 0;
$o = "";
$s = sQuery($SERVER);
while($x<$s['number'])
{
$o = $o . "<Server>
<Name>".$s[$x]['name']."</Name>
<DNS>".$s[$x]['ip']."</DNS>
<Lat>0</Lat>
<Long>0</Long>
<Usage>-1</Usage>
<RankRequired>0</RankRequired>
</Server>";
$x++;
}
return $o;
}
(顺便说一句,这是我的全部功能)