2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?
程序员文章站
2022-06-22 11:01:31
mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组 来看下面的例子: 数据库中有上述几条数据,一般我们想取用就要按照如下代码: 写到这里,$res如果你打印的话,会发现他是一个资源型的结果集,我们并不能直接用,这时候我们就需要用到mysql_fetch_assoc() 函数从 ......
mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组
来看下面的例子:
数据库中有上述几条数据,一般我们想取用就要按照如下代码:
$con = mysql_connect('127.0.0.1','root','root'); mysql_query('use news'); mysql_query('set names utf8'); $sql = "select * from assoc"; $res = mysql_query($sql);
写到这里,$res如果你打印的话,会发现他是一个资源型的结果集,我们并不能直接用,这时候我们就需要用到mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组,然后用while进行循环,再把它存放在数组中,再进行操作。
为了让mysql_fetch_assoc 和 mysql_fetch_array的区别更明显,在这里先不进行循环,来看下两种结果有何区别?
//用array_fetch_assoc $row = mysql_fetch_assoc($res); print_r($row);
打印结果是:array ( [id] => 1 [content] => 一 );可以看到我们得到的是一个关联数组,数据库字段为key值为value。
mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有
//用mysql_fetch_array $row = mysql_fetch_array($res); print_r($row);
打印结果是:array ( [0] => 1 [id] => 1 [1] => 一 [content] => 一 );可以看到我们返回的结果既有数据库字段为key值为value的关联数组,也有数字下标,数据库中的值为value的索引数组。在有些情况下可能只会返回其中的一种或两种均有。如果想要指定返回某一种数组我们可以在括号内再加一个参数。
$row = mysql_fetch_array($res,mysql_assoc); print_r($row);
打印结果是:array ( [id] => 1 [content] => 一 );可以看到我们在后面加入一个参数返回到的就是一个关联数组。像这样的参数有三个:
- mysql_assoc - 关联数组
- mysql_num - 数字数组
- mysql_both - 默认。同时产生关联和数字数组
我们可以根据实际需要进行选择。
推荐阅读
-
2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?
-
php 中的session 和cakephp中的session有什么区别,该怎么解决
-
php 中的session 和cakephp中的session有什么区别,该怎么解决
-
wordpress - PHP中$this和&$this有什么区别
-
PHP中单双引号和双引号有什么区别
-
php中$this->name和$this->$name有什么区别?
-
php 中的session 和cakephp中的session有什么区别,该怎么解决
-
php中的可变变量和引用赋值有什么区别
-
php中的可变变量和引用赋值有什么区别
-
php中empty和array_filter在判断数组是否为空的时候有什么区别