您好,登录后才能下订单哦!
今天就跟大家聊聊有关如何操作php中的mysql获取查询结果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
php操作mysql获取查询结果的方法:1、使用【mysql_fetch_array($rs,MYSQL_ASSOC)】函数;2、使用【mysql_fetch_array($rs,MYSQL_BOTH);】函数获取数组。
php操作mysql获取查询结果的方法:
1. mysql_fetch_array($rs,MYSQL_ASSOC)
[@test01 model]# php test.php Array ( [name] => hellokitty [addr] => i dont kno ) [@test01 model]# more test.php <?php $link=mysql_connect("10.12.136.181","hello","hello"); if(!$link) echo "没有连接成功!"; mysql_select_db("hhhhh", $link); $q = "SELECT * FROM hello"; mysql_query("SET NAMES GB2312"); $rs = mysql_query($q); if(!$rs) { die("Valid result!"); } $result=mysql_fetch_array($rs,MYSQL_ASSOC); print_r($result); mysql_free_result($rs); ?>
2.mysql_fetch_array($rs,MYSQL_BOTH);获取数组
[@test01 model]# more test.php <?php $link=mysql_connect("10.12.136.181","hello","hello"); if(!$link) echo "没有连接成功!"; mysql_select_db("hhhhh", $link); $q = "SELECT * FROM hello"; mysql_query("SET NAMES GB2312"); $rs = mysql_query($q); if(!$rs) { die("Valid result!"); } $result=mysql_fetch_array($rs,MYSQL_ASSOC); print_r($result); mysql_free_result($rs); ?> [@test01 model]# vim test.php [@test01 model]# php test.php Array ( [0] => hellokitty [name] => hellokitty [1] => i dont kno [addr] => i dont kno ) [@test01 model]#
3.mysql_fetch_array($rs,MYSQL_NUM) 获取数组
[@test01 model]# php test.php Array ( [0] => hellokitty [1] => i dont kno ) [@test01 model]# more test.php <?php $link=mysql_connect("10.12.136.181","hello","hello"); if(!$link) echo "没有连接成功!"; mysql_select_db("hhhhh", $link); $q = "SELECT * FROM hello"; mysql_query("SET NAMES GB2312"); $rs = mysql_query($q); if(!$rs) { die("Valid result!"); } $result=mysql_fetch_array($rs,MYSQL_NUM); print_r($result); mysql_free_result($rs); ?> [@test01 model]#
下面是补充:
php获取结果集的几个方法
<?php $conn=mysql_connect("localhost","root",""); $select=mysql_select_db("books",$conn); $query="insert into computers(name,price,publish_data) "; $query.="values('JSP',28.00,'2008-11-1')"; $query="select * from computers"; $result=mysql_query($query); //以下是使用mysql_result()函数来获取到查询结果 $num=mysql_num_rows($result); for($rows_count=0;$rows_count<$num;$rows_count++){ echo "书名:".mysql_result($result,$rows_count,"name"); echo "价格:".mysql_result($result,$rows_count,"price"); echo "出版日期:".mysql_result($result,$rows_count,"publish_data")."<br>"; } //以下是使用mysql_fetch_row()函数来获取到查询结果 while($row=mysql_fetch_row($result)) { echo "书号:".$row[0]."<br>"; echo "书名:".$row[1]."<br>"; echo "价格:".$row[2]."<br>"; echo "出版日期:".$row[3]."<br>"; echo "<br>"; } //以下是使用mysql_fetch_array()函数来获取到查询结果 while($row=mysql_fetch_array($result)) { echo "书号:".$row[0]."<br>"; echo "书名:".$row[1]."<br>"; echo "价格:".$row["price"]."<br>"; echo "出版日期:".$row["publish_data"]."<br>"; echo "<br>"; } //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."<br>"; echo "书名:".$row->name."<br>"; echo "价格:".$row->price."<br>"; echo "出版日期:".$row->publish_data."<br>"; echo "<br>"; } ?>
综合比较
本节主要介绍了获取查询结果集的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
行后的记录。
看完上述内容,你们对如何操作php中的mysql获取查询结果有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。