php中mysql_fetch_row_php中的mysql_fetch_row,mysql_fetch_array,mysql_fetch_object
1.mysql_fetch_row
mysql_fetch_row,這個函數是從結果集中取一行作為枚舉數據,從和指定的結果標識關聯的結果集中取得一行數據并作為數組返回。每個結果的列儲存在一個數組的單元中,偏移量從 0 開始。 注意,這里是從0開始偏移,也就是說不能用字段名字來取值,只能用索引來取值,所以如下代碼是取不到值的
while($row = mysql_fetch_row($res)){echo $row['cid'].'::'.$row[1].”;
}//這里的$row['cid'] 取不到值。
2.mysql_fetch_array
mysql_fetch_array,從結果集中取得一行作為關聯數組,或數字數組,或二者兼有,除了將數據以數字索引方式儲存在數組中之外,還可以將數據作為關聯索引儲存,用字段名作為鍵名。 也就是說他得到的結果像數組一樣,可以用key或者索引來取值,所以下面的代碼可以取到值
while($row = mysql_fetch_array($res)){echo $row['cid'].'::'.$row[1].”;
}//這里$row['cid'],$row[1]都能得到相應的值。
3.mysql_fetch_object
mysql_fetch_object,顧名思義,從結果集中取得一行作為對象,并將字段名字做為屬性,這個太神奇了,在.net中很多地方還要從dataset,datareader中轉換。所以只有這樣才能取到值
while($row = mysql_fetch_object($res)){echo $row->cid.'::'.$row->title.”";
}
4.mysql_fetch_assoc
mysql_fetch_assoc,從結果集中取得一行作為關聯數組,也就是說這個函數不能像mysql_fetch_row那樣用索引來取值,只能用字段名字來取,所以
while($row = mysql_fetch_assoc($res)){echo $row['cid'].'::'.$row[1].”;
}//$row[1]這樣是取不到值的
5.補充一點
mysql_fetch_array函數是這樣定義的:array mysql_fetch_array ( resource result [, int result_type]),返回根據從結果集取得的行生成的數組,如果沒有更多行則返回 FALSE。 mysql_fetch_array() 中可選的第二個參數 result_type 是一個常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。其中:
1、mysql_fetch_assoc($result)==mysql_fetch_array($result,MYSQL_ASSOC); 只能用列名來取
2、mysql_fetch_row($result)==mysql_fetch_array($result,MYSQL_NUM); 只能用下標來取
所以mysql_fetch_array()函數在某種程度上可以算是mysql_fetch_row()與 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外還有MYSQL_BOTH參數,將得到一個同時包含關聯和數字索引的數組。
$row = $db->fetch_array($query);
$db是數數據庫操作類,$db->fetch_array($query),fetch_array($query)是那個db類里的方法,$row = $db->fetch_array($query)這句的意思是從記錄集$query中得到數據庫中的一行記錄。
不用類可這樣實現,如下
$conn=@mysql_connect($host,$user,$pass);
@mysql_select_db($database,$conn);$query=mysql_query($sql);while($row=mysql_fetch_array($query)){$rows[]=$row;
}
總結
以上是生活随笔為你收集整理的php中mysql_fetch_row_php中的mysql_fetch_row,mysql_fetch_array,mysql_fetch_object的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二线城市标准
- 下一篇: mysql开发问题解决_开发过程中mys