欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的區(qū)別

 更新時(shí)間:2009年04月24日 00:34:36   作者:  
一直以來(lái),有很多初學(xué)者搞不懂這些Mysql中從查詢結(jié)果集中取得數(shù)據(jù)的函數(shù)之間有什么區(qū)別,今天我就來(lái)秀一把,在秀之前先給大家一段PHP實(shí)例
復(fù)制代碼 代碼如下:

<?php
$link=mysql_connect('localhost','root',”);
mysql_select_db('abc',$link);
$sql = “select * from book”;
$result = mysql_query($sql);
while($row = mysql_fetch_row($result))
{
echo $row['cid'].'::'.$row[1].'<br>';
}
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo $row['cid'].'::'.$row[1].'<br>';
}
$result = mysql_query($sql);
while($row = mysql_fetch_object($result))
{
echo $row->cid.'::'.$row->title.”<br>”;
}
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{
echo $row['cid'].'::'.$row[1].'<br>';
}
?>

分析:
mysql_fetch_row,這個(gè)函數(shù)是從結(jié)果集中取一行作為枚舉數(shù)據(jù),從和指定的結(jié)果標(biāo)識(shí)關(guān)聯(lián)的結(jié)果集中取得一行數(shù)據(jù)并作為數(shù)組返回。每個(gè)結(jié)果的列儲(chǔ)存在一個(gè)數(shù)組的單元中,偏移量從 0 開(kāi)始。 注意,這里是從0開(kāi)始偏移,也就是說(shuō)不能用字段名字來(lái)取值,只能用索引來(lái)取值,所以如下代碼是取不到值的:
while($row = mysql_fetch_row($res)){
echo $row['cid'].'::'.$row[1].”;
} //這里的$row['cid'] 取不到值。
mysql_fetch_array,從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,或二者兼有,除了將數(shù)據(jù)以數(shù)字索引方式儲(chǔ)存在數(shù)組中之外,還可以將數(shù)據(jù)作為關(guān)聯(lián)索引儲(chǔ)存,用字段名作為鍵名。 也就是說(shuō)他得到的結(jié)果像數(shù)組一樣,可以用key或者索引來(lái)取值,所以
while($row = mysql_fetch_array($res)){
echo $row['cid'].'::'.$row[1].”;
}//這里$row['cid'],$row[1]都能得到相應(yīng)的值。
mysql_fetch_object,顧名思義,從結(jié)果集中取得一行作為對(duì)象,并將字段名字做為屬性。所以只有這樣才能取到值
while($row = mysql_fetch_object($res)){
echo $row->cid.'::'.$row->title.”";
}
mysql_fetch_assoc,從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,也就是說(shuō)這個(gè)函數(shù)不能像mysql_fetch_row那樣用索引來(lái)取值,只能用字段名字來(lái)取,所以
while($row = mysql_fetch_assoc($res)){
echo $row['cid'].'::'.$row[1].”;
} //$row[1]這樣是取不到值的
補(bǔ)充一點(diǎn):
mysql_fetch_array函數(shù)是這樣定義的:array mysql_fetch_array ( resource result [, int result_type]),返回根據(jù)從結(jié)果集取得的行生成的數(shù)組,如果沒(méi)有更多行則返回 FALSE。
mysql_fetch_array() 中可選的第二個(gè)參數(shù) result_type 是一個(gè)常量,可以接受以下值: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()函數(shù)在某種程度上可以算是mysql_fetch_row()與 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外還有MYSQL_BOTH參數(shù),將得到一個(gè)同時(shí)包含關(guān) 聯(lián)和數(shù)字索引的數(shù)組。
在來(lái)說(shuō)句 $row = $db->fetch_array($query);
$db是人數(shù)據(jù)庫(kù)操作類,$db->fetch_array($query),fetch_array($query)是那個(gè)db類里的方法,$row = $db->fetch_array($query)這句的意思是從記錄集$query中得到數(shù)據(jù)庫(kù)中的一行記錄。
不用類可這樣實(shí)現(xiàn)
復(fù)制代碼 代碼如下:

$conn=@mysql_connect($host,$user,$pass);
@mysql_select_db($database,$conn);
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$rows[]=$row;
}

相關(guān)文章

  • 9個(gè)經(jīng)典的PHP代碼片段分享

    9個(gè)經(jīng)典的PHP代碼片段分享

    這篇文章主要給大家分享了9個(gè)經(jīng)典的PHP代碼片段,都是非常實(shí)用,也是經(jīng)常能夠用到的功能,推薦給大家。
    2014-12-12
  • php Memcache 中實(shí)現(xiàn)消息隊(duì)列

    php Memcache 中實(shí)現(xiàn)消息隊(duì)列

    Memcache 一般用于緩存服務(wù)。但是很多時(shí)候,比如一個(gè)消息廣播系統(tǒng),需要一個(gè)消息隊(duì)列。直接從數(shù)據(jù)庫(kù)取消息,負(fù)載往往不行。如果將整個(gè)消息隊(duì)列用一個(gè)key緩存到memcache里面.
    2009-11-11
  • PHP圖片自動(dòng)裁切應(yīng)付不同尺寸的顯示

    PHP圖片自動(dòng)裁切應(yīng)付不同尺寸的顯示

    一張圖片可能會(huì)在不同的地方顯示,大小不同,比例也不同,因此本例介紹的這個(gè)圖片自動(dòng)裁切還是比較有用的,有需求的朋友可以看看
    2014-10-10
  • php將日期格式轉(zhuǎn)換成xx天前的格式

    php將日期格式轉(zhuǎn)換成xx天前的格式

    這篇文章主要介紹了php將日期格式轉(zhuǎn)換成xx天前的格式,涉及php時(shí)間操作及正則匹配的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • php精確的統(tǒng)計(jì)在線人數(shù)的方法

    php精確的統(tǒng)計(jì)在線人數(shù)的方法

    這篇文章主要介紹了php精確的統(tǒng)計(jì)在線人數(shù)的方法,需要的朋友可以參考下
    2015-10-10
  • PHP利用MySQL保存session的實(shí)現(xiàn)思路及示例代碼

    PHP利用MySQL保存session的實(shí)現(xiàn)思路及示例代碼

    使用MySQL保存session,需要保存三個(gè)關(guān)鍵性的數(shù)據(jù):session id、session數(shù)據(jù)、session生命期,下面的示例,大家可以看看
    2014-09-09
  • php PDO中文亂碼解決辦法

    php PDO中文亂碼解決辦法

    PDO 類, 發(fā)現(xiàn)也會(huì)有 UTF-8 亂碼問(wèn)題, 以下解決方案
    2009-07-07
  • 精通php的十大要點(diǎn)(上)

    精通php的十大要點(diǎn)(上)

    原文地址:http://nettuts.com/tutorials/php/10-principles-of-the-php-masters/ 翻譯整理:Andrew,如需轉(zhuǎn)載請(qǐng)注明出處。
    2009-02-02
  • PHP中$GLOBALS[''HTTP_RAW_POST_DATA'']和$_POST的區(qū)別分析

    PHP中$GLOBALS[''HTTP_RAW_POST_DATA'']和$_POST的區(qū)別分析

    這篇文章主要介紹了PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的區(qū)別,結(jié)合具體實(shí)例形式分析了$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的功能與使用過(guò)程中的區(qū)別,需要的朋友可以參考下
    2017-07-07
  • 奇怪的PHP引用效率問(wèn)題分析

    奇怪的PHP引用效率問(wèn)題分析

    最近寫了一個(gè)小的php程序處理日志中的ip,需要將每個(gè)日志中出現(xiàn)的ip都接上一個(gè)出現(xiàn)時(shí)間戳的鏈表,于是按行遍歷log日志并寫了一個(gè)update_timequeue的函數(shù)來(lái)插入時(shí)間戳節(jié)點(diǎn)
    2012-03-03

最新評(píng)論