php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别


Posted in PHP onAugust 08, 2012

方法名: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 相关文章推荐
在Windows版的PHP中使用ADO
Oct 09 PHP
php 不同编码下的字符串长度区分
Sep 26 PHP
PHP filter_var() 函数 Filter 函数
Apr 25 PHP
解析用PHP实现var_export的详细介绍
Jun 20 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
Jun 28 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
PHP获取windows登录用户名的方法
Jun 24 PHP
ThinkPHP实现多数据库连接的解决方法
Jul 01 PHP
PHP实现图片裁剪、添加水印效果代码
Oct 01 PHP
php curl请求信息和返回信息设置代码实例
Apr 27 PHP
php单链表实现代码分享
Jul 04 PHP
php 使用 __call实现重载功能示例
Nov 18 PHP
php中++i 与 i++ 的区别
Aug 08 #PHP
php中判断文件空目录是否有读写权限的函数代码
Aug 07 #PHP
PHP中全局变量global和$GLOBALS[]的区别分析
Aug 06 #PHP
php一个找二层目录的小东东
Aug 02 #PHP
PHP文章采集URL补全函数(FormatUrl)
Aug 02 #PHP
PHP服务器页面间跳转实现方法
Aug 02 #PHP
php中3des加密代码(完全与.net中的兼容)
Aug 02 #PHP
You might like
用PHP连mysql和oracle数据库性能比较
2006/10/09 PHP
用PHP控制用户的浏览器--ob*函数的使用说明
2007/03/16 PHP
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
2009/10/15 PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
2016/01/11 PHP
php+ajax登录跳转登录实现思路
2016/07/31 PHP
php实现获取近几日、月时间示例
2019/07/06 PHP
发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
2007/11/30 Javascript
javascript中[]和{}对象使用介绍
2013/03/20 Javascript
最短的IE判断var ie=!-[1,]分析
2014/05/28 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
在 Express 中使用模板引擎
2015/12/10 Javascript
JavaScript中的boolean布尔值使用学习及相关技巧讲解
2016/05/26 Javascript
非常实用的vue导航钩子
2017/03/20 Javascript
微信小程序实现缓存根据不同的id来进行设置和读取缓存
2017/06/12 Javascript
微信小程序实现传参数的几种方法示例
2018/01/10 Javascript
微信小程序商品详情页的底部弹出框效果
2020/11/16 Javascript
iview同时验证多个表单问题总结
2018/09/29 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
python使用rsa加密算法模块模拟新浪微博登录
2014/01/22 Python
python smtplib模块发送SSL/TLS安全邮件实例
2015/04/08 Python
python如何实现excel数据添加到mongodb
2015/07/30 Python
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
python机器学习之神经网络实现
2018/10/13 Python
详解在Python中以绝对路径或者相对路径导入文件的方法
2019/08/30 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
娇韵诗香港官网:Clarins香港
2020/08/13 全球购物
建筑工程技术应届生自荐信
2013/09/27 职场文书
毕业生多媒体设计求职信
2013/10/12 职场文书
初一学生评语大全
2014/04/24 职场文书
消防安全承诺书
2014/05/22 职场文书
小学运动会口号
2014/06/07 职场文书
基于Python的EasyGUI学习实践
2021/05/07 Python
Python中OpenCV实现简单车牌字符切割
2021/06/11 Python
Html5获取用户当前位置的几种方式
2022/01/18 HTML / CSS
生命的关键成分来自太空?陨石说是的
2022/04/29 数码科技
SQL Server中锁的用法
2022/05/20 SQL Server