溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發(fā)技術(shù) > 
  • php調(diào)用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數(shù)據(jù)的區(qū)別是什么

php調(diào)用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數(shù)據(jù)的區(qū)別是什么

發(fā)布時間:2021-02-01 10:46:25 來源:億速云 閱讀:123 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹php調(diào)用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數(shù)據(jù)的區(qū)別是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

方法名:mssql_fetch_row()

測試:

require 'dbconn.php';

$sql = 'select * from _Test';

$query = mssql_query($sql);

while($row=mssql_fetch_row($query))

{

echo $row['UserId'].'::'.$row[1].'<br>';

}

返回:

Notice: Undefined index: UserId in D:/_PHP_Test/Test2/test_connLocalDB.php on line 32 ::王小一

Notice: Undefined index: UserId in D:/_PHP_Test/Test2/test_connLocalDB.php on line 32 ::王小二

Notice: Undefined index: UserId in D:/_PHP_Test/Test2/test_connLocalDB.php on line 32 ::王小三

Notice: Undefined index: UserId in D:/_PHP_Test/Test2/test_connLocalDB.php on line 32 ::王小四

Notice: Undefined index: UserId in D:/_PHP_Test/Test2/test_connLocalDB.php on line 32 ::王小五

分析:

mssql_fetch_row(),和用mssql_fetch_array()加上第二個可選參數(shù) MYSQL_NUM 完全相同。從和指定的結(jié)果標識關(guān)聯(lián)的結(jié)果集中取得一行數(shù)據(jù)并作為數(shù)組返回。每個結(jié)果的列儲存在一個數(shù)組的單元中,偏移量從 0 開始。 注意,這里是從0開始偏移,不能用key值(字段名)來取值,只能用索引來取值。因此,這里使用$row['key值']無法取到值。

方法名: mssql_fetch_assoc()

測試:

$query = mssql_query($sql);

while($row=mssql_fetch_assoc($query))

{

echo $row['UserId'].'::'.$row[1].'<br>';

}

返回:

Notice: Undefined offset: 1 in D:/_PHP_Test/Test2/test_connLocalDB.php on line 43 1::

Notice: Undefined offset: 1 in D:/_PHP_Test/Test2/test_connLocalDB.php on line 43 2::

Notice: Undefined offset: 1 in D:/_PHP_Test/Test2/test_connLocalDB.php on line 43 3::

Notice: Undefined offset: 1 in D:/_PHP_Test/Test2/test_connLocalDB.php on line 43 4::

Notice: Undefined offset: 1 in D:/_PHP_Test/Test2/test_connLocalDB.php on line 43 5::

分析:

mssql_fetch_assoc() 和用mssql_fetch_array()加上第二個可選參數(shù) MYSQL_ASSOC 完全相同。它僅僅返回關(guān)聯(lián)數(shù)組。這也是 mssql_fetch_array()起初始的工作方式。因此用$row[索引值]無法取到值。

方法名: mssql_fetch_array()

測試:

<?php

$query = mssql_query($sql);

while($row=mssql_fetch_array($query))

{

echo $row['UserId'].'::'.$row[1].'<br>';

}

?>

返回:

1::王小一

2::王小二

3::王小三

4::王小四

5::王小五

分析:

mssql_fetch_array(),是mssql_fetch_row()的擴展版本。除了將數(shù)據(jù)以數(shù)字索引方式儲存在數(shù)組中之外,還可以將數(shù)據(jù)作為關(guān)聯(lián)索引儲存,用字段名作為鍵名。 因此這里使用$row['key值']和$row[索引值]皆可以取到值。

mssql_fetch_array() 中第二個參數(shù)result_type (這是一個常量)為可選參數(shù),取值范圍為:MYSQL_ASSOC ,MYSQL_NUM 和 MYSQL_BOTH 。其中:

mssql_fetch_array($query, MYSQL_ASSOC) == mssql_fetch_assoc($query);

mssql_fetch_array($query, MYSQL_NUM) == mssql_fetch_row($query);

所以mssql_fetch_array()函數(shù)在某種程度上可以算是mssql_fetch_row()與 mssql_fetch_assoc ()的集合。因此,mssql_fetch_array()另外還有MYSQL_BOTH參數(shù),將得到一個同時包含關(guān) 聯(lián)和數(shù)字索引的數(shù)組。

方法名: mssql_fetch_object()

測試:

$query=mssql_query($sql);

while($row=mssql_fetch_object($query))

{

echo $row->UserId.'::'.$row->CreateTime."<br>";

}

返回:

1::06 7 2011 4:46PM

2::06 7 2011 4:46PM

3::06 7 2011 4:46PM

4::06 7 2011 4:46PM

5::06 7 2011 4:46PM

分析:

mysql_fetch_object() 和 mssql_fetch_array類似,只有一點區(qū)別,即返回一個對象而不是數(shù)組,并將字段名字做為屬性。間接地也意味著只能通過字段名來訪問,而不是偏移量。

以上是“php調(diào)用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數(shù)據(jù)的區(qū)別是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI