我有下面的 PHP,当位置数组只有 1 个值时效果很好,但是当它有任何大于 1 的数字时,第一个位置的信息会一直打印为空白。通过调用explode
逗号分隔的列表来设置数组。当我在循环之前手动设置数组时,效果很好!然而,当我使用 时explode
,即使我打印了数组并且可以确认它正在按照我的预期进行设置(使用正确的 0 索引)。我的代码是:
echo "<ul>";
foreach ($locations as &$value)
{
$locationDetails = mysql_query("SELECT id, name FROM locations WHERE id='$value'");
$locationDetailRow = mysql_fetch_assoc($locationDetails);
echo "<li>".$locationDetailRow['name']."</li>";
}
unset($value);
echo "</ul>";
我已经确认查询没有失败,这$value
就是我所期望的,并且在每种情况下name
都存在第一个。$value
当有多个位置时,这应该在第一种情况下失败的任何原因?