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孙悟空6
如果不当作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