您好,登錄后才能下訂單哦!
這篇文章主要介紹php調用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數據的區別是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
方法名: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()加上第二個可選參數 MYSQL_NUM 完全相同。從和指定的結果標識關聯的結果集中取得一行數據并作為數組返回。每個結果的列儲存在一個數組的單元中,偏移量從 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()加上第二個可選參數 MYSQL_ASSOC 完全相同。它僅僅返回關聯數組。這也是 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()的擴展版本。除了將數據以數字索引方式儲存在數組中之外,還可以將數據作為關聯索引儲存,用字段名作為鍵名。 因此這里使用$row['key值']和$row[索引值]皆可以取到值。
mssql_fetch_array() 中第二個參數result_type (這是一個常量)為可選參數,取值范圍為: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()函數在某種程度上可以算是mssql_fetch_row()與 mssql_fetch_assoc ()的集合。因此,mssql_fetch_array()另外還有MYSQL_BOTH參數,將得到一個同時包含關 聯和數字索引的數組。
方法名: 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類似,只有一點區別,即返回一個對象而不是數組,并將字段名字做為屬性。間接地也意味著只能通過字段名來訪問,而不是偏移量。
以上是“php調用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect讀取數據的區別是什么”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。