一直以来,有很多初学者搞不懂这些mysql中从查询结果集中取得数据的函数之间有什么区别,特别是mysql_fetch_array和mysql_fetch_assoc的差别在哪,感觉用一起好像都一样,但是用错就报错,对新手开发很是有难度哦!那么今天我们就来结合实例讲讲!
fetch_array()与fetch_assoc()用起来没有什么大的差别,主要是怎么用?
fetch_array()如果单独作为while的条件,则能够取出结果集中的所有结果。如果单独作用于结果集,只能从结果集中取出数据库结果集一行。
例如:
<?php
//设置页面显示的文字编码
header("content-type:text/html;charset=utf-8");
//设置默认显示新闻的条数
$number = 20;
//从get参数判断是否需要对显示新闻条数进行修改
if (count($_get)>0) {
$number = $_get('number');
}
//连接数据库
$con = mysql_connect(localhost,root,root);
//设置数据库的编码方式,一定要与数据库的编码方式相同
mysql_query(set names utf8);
//json格式的字符串
if ($con) {
//选择要使用的数据库
mysql_select_db(news,$con);
//数据库查询语句
$query = select * from news_list,news_neirong where news_list.id = news_neirong.id order by news_list.id;
$result = mysql_query($query);//执行查询操作,会返回一个包含所有筛选结果的结果集。
//$row = mysql_fetch_array($result);
while ($row = mysql_fetch_array($result)) {//mysql_fetch_array从结果集中取得一行作为关联数组或者数字数组。
echo $row['title']; //这里不能直接写echo $row,这样写会出现错误。
}
} else {
echo 服务器失败了;
}
mysql_close();
?>
返回结果如下:孙悟空1孙悟空2孙悟空3孙悟空4孙悟空5孙悟空
如果不当作while的条件语句
<?php
//设置页面显示的文字编码
header("content-type:text/html;charset=utf-8");
//设置默认显示新闻的条数
$number = 20;
//从get参数判断是否需要对显示新闻条数进行修改
if (count($_get)>0) {
$number = $_get('number');
}
//连接数据库
$con = mysql_connect(localhost,root,root);
//设置数据库的编码方式,一定要与数据库的编码方式相同
mysql_query(set names utf8);
//json格式的字符串
if ($con) {
//选择要使用的数据库
mysql_select_db(news,$con);
//数据库查询语句
$query = select * from news_list,news_neirong where news_list.id = news_neirong.id order by news_list.id;
$result = mysql_query($query);//执行查询操作
$row = mysql_fetch_array($result);
echo $row['title'];
} else {
echo 服务器失败了;
}
mysql_close();
?>
只输出一个结果:孙悟空1
以上讲述本篇文章的内容,其实并没有详细的讲出mysql_fetch_array和mysql_fetch_assoc的详细差异在哪,希望大家可以结合实例去自己研究,因为这样我们会记得更牢固哦!
类似文章推荐:
有关mysql_fetch_array()函数的文章推荐10篇
以上就是细说mysql_fetch_array和mysql_fetch_assoc的差异的详细内容。