您好,登錄后才能下訂單哦!
本文主要給大家介紹php查詢mysqli處理結(jié)果集講析,希望可以給大家補(bǔ)充和更新些知識,如有其它問題需要了解的可以持續(xù)在億速云行業(yè)資訊里面關(guān)注我的更新文章的。
Php使用mysqli_result類處理結(jié)果集有以下幾種方法
fetch_all() | 抓取所有的結(jié)果行并且以關(guān)聯(lián)數(shù)據(jù),數(shù)值索引數(shù)組,或者兩者皆有的方式返回結(jié)果集。 |
fetch_array() | 以一個關(guān)聯(lián)數(shù)組,數(shù)值索引數(shù)組,或者兩者皆有的方式抓取一行結(jié)果。 |
fetch_object() | 以對象返回結(jié)果集的當(dāng)前行。 |
fetch_row() | 以枚舉數(shù)組方式返回一行結(jié)果 |
fetch_assoc() | 以一個關(guān)聯(lián)數(shù)組方式抓取一行結(jié)果。 |
fetch_field_direct() | 以對象返回結(jié)果集中單字段的元數(shù)據(jù)。 |
fetch_field() | 以對象返回結(jié)果集中的列信息。 |
fetch_fields() | 以對象數(shù)組返回代表結(jié)果集中的列信息。 |
fetch_all (從結(jié)果集中取得所有行作為關(guān)聯(lián)數(shù)組)
$sql="select * from user"; $result=$link->query($sql); $row=$result->fetch_all(MYSQLI_BOTH);//參數(shù)MYSQL_ASSOC、MYSQLI_NUM、MYSQLI_BOTH規(guī)定產(chǎn)生數(shù)組類型 $n=0; while($n<mysqli_num_rows($result)){ echo "ID:".$row[$n]["id"]."用戶名:".$row[$n]["name"]."密碼:".$row[$n]["password"]."<br />"; $n++; }
fetch_array (以一個關(guān)聯(lián)數(shù)組,數(shù)值索引數(shù)組,或者兩者皆有的方式抓取一行結(jié)果)
$sql="select * from user"; $result=$link->query($sql); while($row=$result->fetch_array()){ echo "ID:".$row["id"]."用戶名:".$row[1]."密碼:".$row["password"]."<br />"; } //fetch_array方法不再有結(jié)果時返回返回NULL //其返回結(jié)果可以是關(guān)聯(lián)數(shù)組也可以是數(shù)值數(shù)組索引,故$row["id"]、$row[1]都可以
fetch_object (以對象返回結(jié)果集的當(dāng)前行)
$sql="select * from user"; $result=$link->query($sql); while($row=$result->fetch_object()){ echo "ID:".$row->id."用戶名:".$row->name."密碼:".$row->password."<br />"; } //如果無更多的行則返回NULL //返回的結(jié)果是對象,要以對象的方式調(diào)用
fetch_row (以枚舉數(shù)組方式返回一行結(jié)果)
$sql="select * from user"; $result=$link->query($sql); while($row=$result->fetch_row()){ echo "ID:".$row[0]."用戶名:".$row[1]."密碼:".$row[2]."<br />"; } //無更多行時返回NULL //以數(shù)值下標(biāo)調(diào)用數(shù)組,a[0]正確、a["id"]則不
fetch_assoc (以一個關(guān)聯(lián)數(shù)組方式抓取一行結(jié)果)
$sql="select * from user"; $result=$link->query($sql); while($row=$result->fetch_assoc()){ echo "ID:".$row["id"]."用戶名:".$row["name"]."密碼:".$row["password"]."<br />"; } //無更多行時返回NULL //以關(guān)聯(lián)索引訪問數(shù)組,a["id"]正確、a[0]則不
fetch_field_direct (以對象返回結(jié)果集中單字段的元數(shù)據(jù)既單列的信息)
$sql="select * from user"; $result=$link->query($sql); $n=0; while(1){ if(!$row=$result->fetch_field_direct($n++)) break; echo "列名:".$row->name."所在表:".$row->table."數(shù)據(jù)類型:".$row->type."<br />"; } //fetch_field_direct($n)只返回單個列,所以得不斷調(diào)用該方法,沒有該列時返回false
fetch_field (以對象返回結(jié)果集中的列信息)
$sql="select * from user"; $result=$link->query($sql); while($row=$result->fetch_field()){ echo "列名:".$row->name."所在表:".$row->table."數(shù)據(jù)類型:".$row->type."<br />"; } //該方法檢索所有的列 //以對象方式返回列信息 //返回對象屬性如:name - 列名,table - 該列所在的表名,type - 該列的類型,等
fetch_fields (以對象數(shù)組返回代表結(jié)果集中的列信息)
$sql="select * from user"; $result=$link->query($sql); $row=$result->fetch_fields(); foreach($row as $val){ echo "列名:".$val->name."所在表:".$val->table."數(shù)據(jù)類型:".$val->type."<br />"; } //該方法功能與目的fetch_field一樣 //不一樣的是該方法返回一個對象數(shù)組(如:echo $row[0]->name;輸出第一列的名字),而不是一次檢索一列
另:mysqli_result類還有其他方法
field_tell() | 返回字段指針的位置 |
data_seek() | 調(diào)整結(jié)果指針到結(jié)果集中的一個任意行 |
num_fields() | 返回結(jié)果集中的字段數(shù)(列數(shù)) |
field_seek() | 調(diào)整字段指針到特定的字段開始位置 |
free() | 釋放與某個結(jié)果集相關(guān)的內(nèi)存 |
fetch_lengths() | 返回結(jié)果集中當(dāng)前行的列長度 |
num_rows() | 返回結(jié)果集中的行數(shù) |
看了以上關(guān)于php查詢mysqli處理結(jié)果集講析,希望能給大家在實(shí)際運(yùn)用中帶來一定的幫助。本文由于篇幅有限,難免會有不足和需要補(bǔ)充的地方,如有需要更加專業(yè)的解答,可在官網(wǎng)聯(lián)系我們的24小時售前售后,隨時幫您解答問題的。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。