`
kaozjlin
  • 浏览: 116410 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别

    博客分类:
  • php
阅读更多

 

分析:
mysql_fetch_row,这个函数是从结果集中取一行作为枚举数据,从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。 注意,这里是从0开始偏移,也就是说不能用字段名字来取值,只能用索引来取值,所以如下代码是取不到值的:
while($row = mysql_fetch_row($res)){
echo $row['cid'].'::'.$row[1].”;
} //这里的$row['cid'] 取不到值。
mysql_fetch_array,从结果集中取得一行作为关联数组,或数字数组,或二者兼有,除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。 也就是说他得到的结果像数组一样,可以用key或者索引来取值,所以
while($row = mysql_fetch_array($res)){
echo $row['cid'].'::'.$row[1].”;
}//这里$row['cid'],$row[1]都能得到相应的值。
mysql_fetch_object,顾名思义,从结果集中取得一行作为对象,并将字段名字做为属性。所以只有这样才能取到值
while($row = mysql_fetch_object($res)){
echo $row->cid.'::'.$row->title.”";
}
mysql_fetch_assoc,从结果集中取得一行作为关联数组,也就是说这个函数不能像mysql_fetch_row那样用索引来取值,只能用字段名字来取,所以
while($row = mysql_fetch_assoc($res)){
echo $row['cid'].'::'.$row[1].”;
} //$row[1]这样是取不到值的
补充一点:
mysql_fetch_array函数是这样定义的:array mysql_fetch_array ( resource result [, int result_type]),返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。其中:
1、mysql_fetch_assoc($result)==mysql_fetch_array($result,MYSQL_ASSOC);
2、mysql_fetch_row($result)==mysql_fetch_array($result,MYSQL_NUM);
所以mysql_fetch_array()函数在某种程度上可以算是mysql_fetch_row()与 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外还有MYSQL_BOTH参数,将得到一个同时包含关 联和数字索引的数组。
在来说句 $row = $db->fetch_array($query);
$db是人数据库操作类,$db->fetch_array($query),fetch_array($query)是那个db类里的方法,$row = $db->fetch_array($query)这句的意思是从记录集$query中得到数据库中的一行记录。

分享到:
评论

相关推荐

    mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array

    您可能感兴趣的文章:Lesson03_01 什么是CSS和CSS的设置方式Assoc显示或修改文件名扩展关联推荐学习php sesson的朋友必看PHP会话(Session)使用入门mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别js压缩...

    MySQL mysql_fetch_array 函数取得查询结果中的一行作.docx

    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { echo '用户 ID:' . $row['uid'] . ' '; echo '用户名:' . $row['username'] . ' '; } ``` 需要注意的是,`mysql_fetch_array`函数并不...

    mysql_fetch_row()与mysql_fetch_array()的使用介绍

    当设置`result_type`参数为`MYSQL_ASSOC`时,`mysql_fetch_array()`只返回关联数组;设为`MYSQL_NUM`则只返回数值索引数组;而设为`MYSQL_BOTH`(默认值)则会返回同时包含数值和关联索引的数组。 在实际应用中,`...

    深入mysql_fetch_row()与mysql_fetch_array()的区别详解

    此外,通过设置 `MYSQL_ASSOC`、`MYSQL_NUM` 或 `MYSQL_BOTH` 模式,`mysql_fetch_array()` 可以选择返回哪种类型的数组,或者同时返回两种类型的数组。 在PHP5中,MySQL API已经更新为`mysqli`,提供了`mysqli_...

    用mysql_fetch_array()获取当前行数据的方法详解

    同mysql_fetch_row()类似,函数mysql_fetch_array()也是获取结果集中当前行数据,并在调用后自动滑向下一行。其定义如下。复制代码 代码如下:array mysql_fetch_array(int result, int [result_type])参数说明如下。...

    fetchAll()与mysql_fetch_array()的区别详解

    - mysql_fetch_array()函数返回的结果集是一个关联数组(assoc),可以通过字段名(如"id")或者数字索引来访问结果集中的数据。 - fetchAll()函数则依赖于使用的数据库扩展,比如在PDO中,它默认返回一个包含所有...

    php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别

    如果你需要通过字段名来访问数据,`mssql_fetch_assoc()`或`mssql_fetch_array()`(设置为`MYSQL_ASSOC`模式)会更合适。当你想要同时使用数字索引和关联索引,或者希望以面向对象的方式处理数据时,`mssql_fetch_...

    PHP操作MySQL的mysql_fetch_* 函数的常见用法教程

    mysql_fetch_array():从结果集中取得一行作为关联数组或索引数组,或二者兼有 mysql_fetch_row():从结果集中取得一行作为枚举数组 mysql_fetch_assoc():从结果集中取得一行作为关联数组 mysql_fetch_object()...

    深入分析使用mysql_fetch_object()以对象的形式返回查询结果

    与`mysql_fetch_array()`函数类似,`mysql_fetch_object()`可以获取到的结果集中的每一列数据。然而,不同之处在于,`mysql_fetch_object()`返回的是一个对象,这个对象的属性名对应于结果集的列名,属性的值对应于...

    多次执行mysql_fetch_array()的指针归位问题探讨

    需要注意的是,`mysql_fetch_array()` 有多种模式(如 MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH 等),这些模式会影响返回的数组结构。此外,尽管这个例子中使用了 `mysql_` 前缀的函数,但这些函数已被弃用,建议使用 `...

    php访问MYSQL数据库封装类.zip

    MYSQL 数据库访问封装类  MYSQL 数据访问方式,php4支持以mysql_开头的过程访问方式,php5开始支持以mysqli_开头的...4,处理返回的数据 mysql_fetch_array mysql_num_rows mysql_fetch_assoc mysql_fetch_row etc 

    4.8 mysqli_fetch_assoc记录集获取.pdf

    while ($row = mysqli_fetch_assoc($result)) { echo $row['field1'] . " " . $row['field2'] . " "; } ``` 知识点 2: 记录集获取 记录集是指 SQL 查询结果的集合,例如 SELECT 语句执行的结果。记录集可以包含...

    4.9 mysqli_fetch_array记录集获取.pptx

    $row = mysqli_fetch_array($result, MYSQLI_ASSOC); print_r($row); ``` 在实际开发中,我们通常会使用循环来处理多行数据,例如使用while循环: ```php while ($row = mysqli_fetch_array($result)) { // 处理...

Global site tag (gtag.js) - Google Analytics