首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解mysqli_fetch_array()

问理解mysqli_fetch_array()
EN

Stack Overflow用户
提问于 2015-12-10 22:41:12
回答 4查看 389关注 0票数 0

有没有办法使下面的代码变得更干净?我想像这样访问$query4week的行:$query4week[0]。但是mysqli_query()返回一个对象,我不知道如何访问它的特定行。因此,使用fetch_array和for循环,我决定创建自己的索引。

代码语言:javascript
复制
$sql2 = "SELECT * FROM meals ORDER BY RAND() LIMIT 7";
$query4week = mysqli_query($con, $sql2) or die(mysqli_error($con));
for ($i = 0; $result = mysqli_fetch_array($query4week, MYSQLI_ASSOC); $i++)
{
    $meal4week[$i] = $result['meal'];
}

我还在学习PHP,但对面向对象的主题还很薄弱,请耐心点:-)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-12-10 22:49:08

mysqli_query返回一个表示查询结果的资源。您需要使用mysql_fetch_*函数逐行迭代结果。所以是的,如果你对第一行感兴趣的话,你需要某种循环。

票数 0
EN

Stack Overflow用户

发布于 2015-12-10 22:46:17

用这种方式来做

代码语言:javascript
复制
$i = 0; 
while ($result = mysqli_fetch_array($query4week, MYSQLI_ASSOC))
{
    $meal4week[$i] = $result['meal'];
    $i++;
}

应该行得通。

票数 1
EN

Stack Overflow用户

发布于 2015-12-10 22:47:09

如果获取关联数组,则不应该需要for循环。

代码语言:javascript
复制
$i = 0;
while($row = mysqli_fetch_array($query4week, MYSQLI_ASSOC))
{
    $meal4week[$i] = $row['meal'];
    $i++;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34213047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档