mysql_fetch_assoc和mysql_fetch_array、mysql_fetch_row的區別

mysql_fetch_row,這個函數是從結果集中取一行作爲枚舉數據,從和指定的結果標識關聯的結果集中取得一行數據並作爲數組返回。每個結果的列儲存在一個數組的單元中,偏移量從 0 開始。注意,這裏是從0開始偏移,也就是說不能用字段名字來取值,只能用索引來取值,所以如下代碼是取不到值的:

while($row = mysql_fetch_row($result)){

echo $row['id'].'::'.$row[1].”;

} //這裏的$row['id'] 取不到值。


mysql_fetch_array,從結果集中取得一行作爲關聯數組,或數字數組,或二者兼有,除了將數據以數字索引方式儲存在數組中之外,還可以將數據作爲關聯索引儲存,用字段名作爲鍵名。也就是說他得到的結果像數組一樣,可以用key或者索引來取值,所以

while($row = mysql_fetch_array($result)){

echo $row['id'].'::'.$row[1].”;

}//這裏$row['cid'],$row[1]都能得到相應的值。


mysql_fetch_object,顧名思義,從結果集中取得一行作爲對象,並將字段名字做爲屬性。所以只有這樣才能取到值

while($row = mysql_fetch_object($result)){

echo $row->id.'::'.$row->title.”";

}

mysql_fetch_assoc,從結果集中取得一行作爲關聯數組,也就是說這個函數不能像mysql_fetch_row那樣用索引來取值,只能用字段名字來取,所以

while($row = mysql_fetch_assoc($result)){

echo $row['id'].'::'.$row[1].”;

} //$row[1]這樣是取不到值的

發佈了89 篇原創文章 · 獲贊 20 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章