首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP的Mysql -从数据库返回值?

使用PHP的Mysql -从数据库返回值?
EN

Stack Overflow用户
提问于 2013-03-22 13:55:06
回答 4查看 1.9K关注 0票数 1

我正在看一个关于mysql和php的视频教程,有一行代码让我有点困惑:

代码语言:javascript
复制
    <?php

            $result = mysql_query("SELECT * FROM subjects", $connection);
                if(!$result){
                die("Database query failed: " .mysql_error());
                    }


                while($row = mysql_fetch_array($result)){
                echo $row["Menu_Name"]." ".$row["position"]."<br/>";
                    }
                    ?>

我想真正理解这段代码在做什么,所以让我看看我是否弄清楚了。基本上,它在我的屏幕上所做的是返回存储在我的表subjects中的各种项目,并将它们显示在它们的位置上。它通过在两个数组中返回它们来实现这一点,一个是menu-name,它存储每一项的文本,另一个是position,它存储它们出现的顺序。因此,我的while循环遍历这个数组并输出。但这就是我所不明白的。$row是做什么的,它是如何遍历和循环的。我可能离得太远了,希望有人能对此有所了解。

EN

回答 4

Stack Overflow用户

发布于 2013-03-22 13:58:34

mysql_query发送MySQL查询。mysql_query()向与关联的服务器上的当前活动数据库发送唯一查询(不支持多个查询)。如果用户没有访问查询所引用的表的权限,mysql_query()也将失败并返回FALSE

mysql_fetch_array以关联数组和/或数字数组的形式获取结果行。返回与读取的行对应的字符串数组,如果没有更多的行,则返回FALSE

最后一件事,如果你想知道一个函数是怎么回事,可以参考文档。它在大多数情况下都有帮助。

根据您提出的问题,我想您应该学习一下基本的MYSQL和PHP课程。

票数 2
EN

Stack Overflow用户

发布于 2013-03-22 13:57:43

这不是两个数组。这是一个多维的数组

代码语言:javascript
复制
while($row = mysql_fetch_array($result)){

当您运行这行代码时,它会从结果列表中获取完整的一行,并将其分配给一个名为$row的数组。然后,您可以指定索引名称以从索引中获取数据,就像您编写的那样

代码语言:javascript
复制
$row["Menu_Name"]

因此,Menu_Name是包含来自数据库的一些值的数组$row的索引。由于此语句存在于循环中,因此它将遍历返回结果的所有行,并对每一行执行相同的操作

票数 0
EN

Stack Overflow用户

发布于 2013-03-22 14:03:19

此行正在逐行检索表记录。这实际上是一个表示表记录的数组。

代码语言:javascript
复制
    $row = mysql_fetch_array($result)

现在,此数组通过表字段名进行索引。因为您的查询是'select *',这意味着它正在检索所有字段。

所以,

代码语言:javascript
复制
$row["Menu_Name"] 

具有当前行的表'subjects‘的字段'Menu_Name’的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15563649

复制
相关文章

相似问题

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