PHP操作MySQL的mysql_fetch_* 函數(shù)的常見(jiàn)用法教程
mysql_fetch_* 列函數(shù)
mysql_fetch_* 列函數(shù)的主要功能是從查詢(xún)返回的結(jié)果集中取得相關(guān)的查詢(xún)結(jié)果,主要包括:
- mysql_fetch_array():從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組或索引數(shù)組,或二者兼有
- mysql_fetch_row():從結(jié)果集中取得一行作為枚舉數(shù)組
- mysql_fetch_assoc():從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組
- mysql_fetch_object():從結(jié)果集中取得一行作為對(duì)象
- mysql_fetch_field():從結(jié)果集中取得字段信息并作為對(duì)象返回
- mysql_fetch_lengths():取得結(jié)果集中取得一行每個(gè)字段內(nèi)容輸出的長(zhǎng)度
- mysql_fetch_array()
mysql_fetch_array() 函數(shù)用于從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組或索引數(shù)組,或二者兼有。成功返回一個(gè)數(shù)組,否則返回 FALSE 。
語(yǔ)法:
array mysql_fetch_array( resource result [, int result_type] )
參數(shù)說(shuō)明:
- result:查詢(xún)函數(shù)(如 mysql_query)返回的數(shù)據(jù)集資源
- result_type:可選常量,標(biāo)明數(shù)組結(jié)果類(lèi)型,可接受值如下:
- MYSQL_BOTH:默認(rèn),得到一個(gè)同時(shí)包含關(guān)聯(lián)和數(shù)字索引的數(shù)組,用字段名作為鍵名
- MYSQL_ASSOC:只得到關(guān)聯(lián)索引的數(shù)組
- MYSQL_NUM:只得到數(shù)字索引的數(shù)組
例子 1 ,使用 MYSQL_NUM :
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("連接數(shù)據(jù)庫(kù)失?。? . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_NUM)){ echo "用戶(hù)ID:".$row[0]."<br />"; echo "用戶(hù)名:".$row[1]."<br />"; } ?>
瀏覽器輸出:
用戶(hù)ID:1 用戶(hù)名:admin 用戶(hù)ID:2 用戶(hù)名:小明 用戶(hù)ID:3 用戶(hù)名:Jack 用戶(hù)ID:4 用戶(hù)名:小王
例子 2 ,使用 MYSQL_ ASSOC :
//重復(fù)代碼省略 $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_array($result, MYSQL_ ASSOC)){ echo "用戶(hù)ID:".$row['uid']."<br />"; echo "用戶(hù)名:".$row['username']."<br />"; }
瀏覽器輸出內(nèi)容同上。
當(dāng)使用 MYSQL_BOTH 或省略該參數(shù)是,將同時(shí)具有 MYSQL_NUM 與 MYSQL_ ASSOC 的特性。
說(shuō)明
本函數(shù)返回的字段名作為數(shù)組鍵值是區(qū)分大小寫(xiě)的
用 mysql_fetch_array() 并不明顯 比用 mysql_fetch_row() 慢,而且還提供了明顯更多的值
該函數(shù)只從當(dāng)前數(shù)據(jù)指針取得一行數(shù)據(jù)作為結(jié)果返回,如果執(zhí)行過(guò)一次,會(huì)將數(shù)據(jù)指針指向下一列數(shù)據(jù)
如果要取得多行或者全部數(shù)據(jù),需要使用循環(huán)結(jié)構(gòu)將數(shù)據(jù)逐行取出
如果結(jié)果中的兩個(gè)或以上的列具有相同字段名,最后一列將優(yōu)先。要訪問(wèn)同名的其它列,必須用該列的數(shù)字索引或給該列起個(gè)別名
mysql_fetch_row()
PHP 的 MySQL 操作函數(shù) mysql_fetch_row() 用于從結(jié)果集中取得一行作為枚舉數(shù)組。成功返回一個(gè)數(shù)組,否則返回 FALSE 。
語(yǔ)法:
array mysql_fetch_row( resource result )
該函數(shù)表現(xiàn)與 mysql_fetch_array( resource result, MYSQL_NUM ) 一致,請(qǐng)參考mysql_fetch_array() 函數(shù)用法,在此不在贅述。
mysql_fetch_object()
PHP 操作 MySQL 的函數(shù) mysql_fetch_object() 用于從結(jié)果集中取得一行作為對(duì)象,成功返回一個(gè)對(duì)象,否則返回 FALSE 。
語(yǔ)法:
object mysql_fetch_object( resource result )
例子:
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("連接數(shù)據(jù)庫(kù)失?。? . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); $result = mysql_query("SELECT uid,username FROM user"); while($row = mysql_fetch_object($result)){ echo "用戶(hù)ID:".$row->uid."<br />"; echo "用戶(hù)名:".$row->username."<br />"; } ?>
瀏覽器輸出:
用戶(hù)ID:1 用戶(hù)名:admin 用戶(hù)ID:2 用戶(hù)名:小明 用戶(hù)ID:3 用戶(hù)名:Jack 用戶(hù)ID:4 用戶(hù)名:小王
相關(guān)文章
PHP使用preg_split和explode分割textarea存放內(nèi)容的方法分析
這篇文章主要介紹了PHP使用preg_split和explode分割textarea存放內(nèi)容的方法,結(jié)合實(shí)例形式分析preg_split和explode函數(shù)的功能、使用技巧與文本字符串分割過(guò)程中的相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-07-07PHP編程中的Session阻塞問(wèn)題與解決方法分析
這篇文章主要介紹了PHP編程中的Session阻塞問(wèn)題與解決方法,簡(jiǎn)單分析了php session阻塞的原理、原因與簡(jiǎn)單解決方法,需要的朋友可以參考下2017-08-08php設(shè)計(jì)模式 Builder(建造者模式)
將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離,使用同樣的構(gòu)建過(guò)程可以創(chuàng)建不同的表示2011-06-06php中有關(guān)合并某一字段鍵值相同的數(shù)組合并的改進(jìn)
這篇文章主要介紹了php中有關(guān)合并某一字段鍵值相同的數(shù)組合并的改進(jìn),需要的朋友可以參考下2015-03-03php foreach 使用&(與運(yùn)算符)引用賦值要注意的問(wèn)題
foreach 通過(guò)在 $value 之前加上 & 很容易就能修改數(shù)組的單元,在 foreach 使用引用時(shí)要注意了。也可以在處理完后立即斷開(kāi)引用關(guān)系,后面就不會(huì)有上述情況了。2010-02-02一個(gè)PHP的遠(yuǎn)程圖片抓取函數(shù)分享
遠(yuǎn)程圖片抓取的方法有很多,在本文將為大家介紹下php中是如何實(shí)現(xiàn)的,感興趣的朋友可以了解下2013-09-09ThinkPHP連接ORACLE數(shù)據(jù)庫(kù)的詳細(xì)教程
ThinkPHP要連接Oracle數(shù)據(jù)庫(kù),必須有兩個(gè)東西,一個(gè)PHP官方寫(xiě)的擴(kuò)展,一個(gè)Oracle官方寫(xiě)的客戶(hù)端,本文小編給大家詳細(xì)介紹了ThinkPHP連接ORACLE數(shù)據(jù)庫(kù)的教程,文中通過(guò)圖文結(jié)合的方式講解的非常詳細(xì),需要的朋友可以參考下2023-12-12