如果用了 MysqL_BOTH,将得到一个同时包含关联和数字索引的数组。
用 MysqL_ASSOC 只得到关联索引(如同MysqL_fetch_assoc() 那样),
用 MysqL_NUM 只得到数字索引(如同 MysqL_fetch_row 那样)。
1. MysqL_fetch_array($rs,MysqL_ASSOC)
2.MysqL_fetch_array($rs,MysqL_BOTH);获取数组
3.MysqL_fetch_array($rs,MysqL_NUM) 获取数组
下面是补充:
"; } //以下是使用MysqL_fetch_row()函数来获取到查询结果 while($row=MysqL_fetch_row($result)) { echo "书号:".$row[0]."
"; echo "书名:".$row[1]."
"; echo "价格:".$row[2]."
"; echo "出版日期:".$row[3]."
"; echo "
"; } //以下是使用MysqL_fetch_array()函数来获取到查询结果 while($row=MysqL_fetch_array($result)) { echo "书号:".$row[0]."
"; echo "书名:".$row[1]."
"; echo "价格:".$row["price"]."
"; echo "出版日期:".$row["publish_data"]."
"; echo "
"; }
//MysqL_fetch_assoc()同MysqL_fetch_array($result,MysqL_ASSOC)一样
while($row = MysqL_fetch_assoc($res)){
echo $row['price'].'::'.$row['publish_data'].”;
} //$row[0]不能取值
//以下是使用MysqL_fetch_object()函数来获取到查询结果
while($row=MysqL_fetch_object($result))
{
echo "书号:".$row->id."
";
echo "书名:".$row->name."
";
echo "价格:".$row->price."
";
echo "出版日期:".$row->publish_data."
";
echo "
";
}
?>
综合比较
本节主要介绍了获取查询结果集的4个函数,此处对它们进行综合比较。 ● MysqL_result():优点在于使用方便;而缺点在于功能少,一次调用只能获取结果数据集中的一行记录,对较大型的数据库效率较低。 ● MysqL_fetch_row():优点在于执行效率在4种方法中最高;不足在于只能用数字作为属性索引来获得属性值,在使用时非常容易出现混淆。 ● MysqL_fetch_array():执行效率同样很高,同MysqL_fetch_row()相差无几,并且可以用属性名方式直接获取得属性值,因此,在实际应用中最常用。 ● MysqL_fetch_object():采用了面向对象的思想,在设计思路上更为先进,如果读者习惯于面向对象的思路来写程序,则会很自然的选择它。其次,该方法的优点还体现在,对于结构较为复杂的数据结果,在逻辑上显得更为清晰。
后3个函数的共同点在于,都是取得当前行的数据,然后自动滑向后一行。有时候,希望控制滑动的行数,这是常常搭配使用的一个函数是MysqL_data_seek(),其定义为:
int MysqL_data_seek(int result_identifier,int row_number)
调用该函数可以在结果集中向后滑动row_number行,在下一次调用MysqL_fetch_*函数时,读取的将是向后滑动row_number行后的记录。