ADORecordSet(资料集)
当一个SQL指令成功的被 ADOConnection->Execute($sql)执行后,一个 ADORecordSet 对象会被回传回来。这个对象提供了一个虚拟的指针,所以我们可以移动它,从一笔到一笔。也提供一些函数,以取得字段信息和字段类别,并有协助函数去格式化结果,以展示给使用者看。
ADORecordSet 属性
fields: 包含了目前记录的数组。不是关连式数组,但它的索引值是从 0 到 字段数 - 1。请参考函数 Fields ,这个函数的动作就像是一个关连式数组。
dataProvider: 连结数据库的底层机制,正常设定为 native ,除非是使用 odbc 或 ado 。
blobSize: 一个 char , string 或者 varchar object 在被转成 Blob 前的最大长度(Blob 在显示时应该使用 textarea)。其它请参考 MetaType 函数。
sql: 储存了建立本数据集所使用的 sql 指令。
canSeek: 如果 Move() 函数有作用,会被设成 true 。
EOF: 当指针被移动到最后一笔时,这个值会被设定成 true 。
ADORecordSet 函数
ADORecordSet( )
建构函数。一般来说你不需要自己呼叫这个函数。
GetAssoc([$force_array])
如果字段数大于 2 ,那么从资料集中产生一个关连式数组。这个数组是从目前的指针起一直到档尾(EOF)。这个资料集的第一个字段会成为数组的索引。如果字段数刚好是2,当这数组被每一个键值所建立时,那么索引会直接对应到值,除非 $force_array 被设成 true 。
范例:
以下是我们资料集的资料:
列1: Apple, Fruit, Edible
列2: Cactus, Plant, Inedible
列3: Rose, Flower, Edible
GetAssociation 将会产生一个如下的关系型数组:
Apple => [Fruit, Edible]
Cactus => [Plant, Inedible]
Rose => [Flower,Edible]
回传值:
关连式数组,错误则传回 false 。
GetArray([$number_of_rows])
从目前指针位置产生一个数组,索引值从 0 到 $number_of_rows - 1 。如果 $number_of_rows 没有被定义,那会到档尾(EOF)。
GetRows([$number_of_rows])
是 GetArray() 的同义函数,是为了与 Microsoft ADO 兼容才有的。
GetMenu($name, [$default_str=''], [$blank1stItem=true], [$multiple_select=false], [$size=0], [$moreAttr=''])
建立一个 HTML 选单 (<select><option><option></select>) 。资料集的第一栏 (fields[0]) 将会作为 <option> 里的显示字符串。如果资料集有超过一个以上的字段,第二栏 (fields[1]) 将设定成回传给WEB服务器的值(即 value)。选单将被给予 $name 为名称。
如果 $default_str 被定义了,那么如果 $default_str == fields[0] , 那么这个字段将会被选取。 如果 $blank1stItem 为 true ,那第一个选项将会是空值。$Default_str 在对于可多选清单盒时,可以是一个数组。
要产生一个选单区,设定 $size 为一个非 0 值(或者传入 $default_str 为一个数组)。如果 $multiple_select 为 true ,那么一个选单区将会被产生成有 $size 个项目可见的选单(如果 $size == 0 那预设为 5 个),而且ADODB将会回传一个数组给服务器。最后,你可以使用 $moreAttr 去增加其它的属性,像是 javascript 或样式表。
选单范例 1: GetMenu('menu1','A',true) 将会产生一个像这样的选单 : A B C 这里的资料 (A,1), (B,2), (C,3). 请参考 范例 5 。
选单范例 2: 相同的资料, GetMenu('menu1',array('A','B'),false) 将会产生一个 A 及 B 被选取的选单 : A B C
GetMenu2($name, [$default_str=''], [$blank1stItem=true], [$multiple_select=false], [$size=0], [$moreAttr=''])
近似于 GetMenu ,除了 $default_str 将会和 fields[1] 做比对,也就是选项值。
选单范例 3: 给予在范例 2 里的数据 , GetMenu2('menu1',array('1','2'),false) 将会产生一个选单,A及B将会被选取。然而,这一次的被选取的比对基准是第二个字段,也就是存放要被回传给服务器里的值。
UserDate($str, [$fmt])
转换日期字符串 $str 为另一个格式,UserDate 呼叫 UnixDate 来解译 $str ,而 $fmt 默认值是 Y-m-d 。
UserTimeStamp($str, [$fmt])
转换时间字符串 $str 为另一个格式,时间字符串格式是 Y-m-d H:i:s , 像是 "2002-02-28 23:00:12"。UserTimeStamp 呼叫 UnixTimeStamp 来解译 $str ,而 $fmt 默认值为 Y-m-d H:i:s 。
UnixDate($str)
将日期字符串 $str 解译,并且转换成 unix mktime 格式(从 1970.01.01 00:00:00 起到现在的秒数)后传回。预设日期是以 Y-m-d H:i:s 格式来传入的。而对于 Sybase 及 Microsoft SQL Server 而言 M d Y 也是可以接受的(三个字符的月份表示法是被一个全域数组所控制的,这个部份可能需要在地化 )。
自 1.91 版起,这个函数存在于 ADORecordSet 及 ADOConnection两个地方。
UnixTimeStamp($str)
将时间字符串 $str 解译,并且转换成 unix mktime 格式(从 1970.01.01 00:00:00 起到现在的秒数)后传回。预设日期是以 Y-m-d H:i:s 格式来传入的。而对于 Sybase 及 Microsoft SQL Server 而言 M d Y 也是可以接受的(三个字符的月份表示法是被一个全域数组所控制的,这个部份可能需要在地化 )。
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·用PHP实现JS的escape和unescape函数功能
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
·使用PHP伪造sessionid做防刷新功能
·用PHP显示图片的EXIF信息
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·用PHP实现JS的escape和unescape函数功能
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
- · 3分钟快速了解 Delphi for PHP 特色 (中文), PDF档
- · 购买Delphi for PHP的五大理由, PDF档
- · Delphi for PHP 使用规格介绍, PDF档
- · Delphi for PHP 問答集 (From CodeGear)
- · Delphi for PHP 产品价格表




