我试图使用循环语句将不确定数量的名称放入变量值:
while ($row = mysql_fetch_row($resultdq2))
{
$name[$i] = $row[2];
$parent_ID = $row[1];
$i++;
}
Run Code Online (Sandbox Code Playgroud)
然后我试图使用以下结构回显名称/
$x = 0;
while (isset ($name[$x]))
echo $name[$x];
$x++;
Run Code Online (Sandbox Code Playgroud)
唯一的问题是,这个第二个循环结构冻结了我的pc onload,因此我假设它是无限循环.
它为什么这样做?假设那个$x并且$i是相同的值(即7)然后$name[$x]并且name[$i]应该是等价的,这是不正确的?
然后,一旦我的$name[$x]第二个循环中的条件通过了分配的变量点,循环终止了吗?
是否有可能对于循环语句条件,它使用全局变量声明$x = 0而不是内部$x值来评估是否满足条件,因此该语句始终为真?
有什么问题,我该如何纠正呢?
也许添加'{'和'}'来增加计数器?
while (isset ($name[$x])) {
echo $name[$x];
$x++;
}
Run Code Online (Sandbox Code Playgroud)
更好用foreach,添加is_array检查.写好的代码!