我正在尝试从表中获取数据,并将其存储在名为"items“的数组中,然后使用index访问它。我得到一个错误“未定义的偏移量: 0”。代码中有什么错误?
$i=0;
while($row = mysql_fetch_array($sqlquery))
{
$name = $row['name'];
$items = array();
$items[$i] = $name;
$i= $i +1;
}
echo $items[0];
echo $items[1];发布于 2013-03-22 20:05:24
您将在每次迭代中重新创建数组。结果数组(代码中的$items)的初始化应该在循环之外。例如:
$items = array();
while($row = mysql_fetch_array($sqlquery, MYSQL_ASSOC))
{
$name = $row['name'];
$items[] = $name;
}
echo $items[0];
echo $items[1];注意: mysql_*函数已弃用,请使用mysqli_*或PDO。
发布于 2013-03-22 20:06:20
在你的循环之外定义$items,在你的循环之外定义$i = 0,并更改为mysql_fetch_assoc并尝试这样做。
$i = 0;
$items = array();
while($row = mysql_fetch_assoc($sqlquery)) {
$name = $row['name'];
$items[$i] = $name;
$i++;
}
echo $items[0];
echo $items[1];发布于 2013-03-22 20:05:49
每次在循环中都要重新声明数组,这是不正确的。
$items = array();
while($row = mysql_fetch_assoc($sqlquery))
{
$items[] = $name = $row['name'];
}
echo $items[0];
echo $items[1];注: 。它们不再由and are officially deprecated维护。看到了吗?相反,学习,并使用PDO或MySQLi - this article将帮助您决定使用哪种方法。如果你选择PDO,here is a good tutorial。
https://stackoverflow.com/questions/15569825
复制相似问题