一、mysql_fetch_row
這個函數是從結果集中取一行作為枚舉數據,從和指定的結果標識關聯的結果集中取得一行數據並作為數組返回。每個結果的列儲存在一個數組的單元中,偏移量從 0 開始。
注意,這裡是從0開始偏移,也就是說不能用字段名字來取值,只能用索引來取值。例如:
while($row = mysql_fetch_row($res)){
echo $row['cid'].'>>>'.$row[1].'
';
}
這裡的$row['cid']取不到值,$row[1]可以取到。
二、mysql_fetch_assoc
從結果集中取得一行作為關聯數組,也就是說這個函數不能像mysql_fetch_row那樣用索引來取值,只能用字段名字來取。例如:
while($row = mysql_fetch_assoc($res)){
echo $row['cid'].'>>>'.$row[1].'
';
}
這裡$row[1]這樣是取不到值的,$row['cid']可以取到。
三、mysql_fetch_array
從結果集中取得一行作為關聯數組,或數字數組,或二者兼有,除了將數據以數字索引方式儲存在數組中之外,還可以將數據作為關聯索引儲存,用字段名作為鍵名。
也就是說他得到的結果像數組一樣,可以用key或者索引來取值。例如:
while($row = mysql_fetch_array($res)){
echo $row['cid'].'>>>'.$row[1].'
';
}
這裡$row['cid'],$row[1]都能得到相應的值。
mysql_fetch_row和mysql_fetch_assoc的功能加起來就是mysql_fetch_array。
四、mysql_fetch_object
顧名思義,從結果集中取得一行作為對象,並將字段名字做為屬性。所以只有這樣才能取到值:
while($row = mysql_fetch_object($res)){
echo $row->cid.'>>>'.$row->title."
";
}