如何知道PHP COM对象支持哪些方法

时间:2013-12-12 13:16:18

标签: php com lotus-notes lotus-domino lotus

我想连接到lotus notes数据库,所以我使用的是COM

$session = new COM("Lotus.NotesSession");

现在我想知道这个对象支持哪些方法以及如何使用它们。实际上我的目的是扫描特定数据模式的所有数据。

4 个答案:

答案 0 :(得分:1)

这是NotesSession类的doc的link,以及可用于处理来自Notes和Domino的数据的所有其他相关类的索引。

由于Notes和Domino开发的概念与大多数人习惯的有些不同,我建议您寻找一些tuturial材料。不幸的是,你不会找到任何专门针对PHP的教程,但无论语言如何,编程模型都将基本相同。虽然它很老,但free IBM Redbook可能涵盖了编程模型的所有基础知识。此外,这些类的原始开发人员提供了一本更为旧的面向Java的书的PDF,这些书对Notes和Domino的概念提供了很多清晰的见解,并发布了here

对于"扫描特定模式的所有数据",NotesDatabase.Search或NotesDatabase.FTSearch方法可能对您感兴趣 - 但它真的很有用很难确切地知道你的意思。做你真正需要做的事情,并有效地做,可能需要一个完全不同的方法。

答案 1 :(得分:0)

我对php中的COM一无所知。如果没有使用Lotus的COM文档,也许您可​​以使用Reflection来获取它的信息。

http://www.php.net/manual/en/class.reflectionobject.php

答案 2 :(得分:0)

尝试com_print_typeinfo
E.g。

<?php
$obj = new COM('Word.Application');

com_print_typeinfo($obj);

$obj->Quit();

打印

class _Application { /* GUID={00020970-0000-0000-C000-000000000046} */
[...]
/* DISPID=386 */
/* VT_BOOL [11] */
var $FocusInMailHeader;

/* DISPID=1105 */
function Quit(
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$SaveChanges,
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$OriginalFormat,
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$RouteDocument 
    )
[...]

答案 3 :(得分:0)

以下是IBM Notes中COM文档的链接: http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=%2Fcom.ibm.designer.domino.main.doc%2FH_4_LOTUSSCRIPT_NOTES_CLASSES_REFERENCE.html

下面是NotesSession类的方法和属性列表。但是你需要使用其他类,轻松使用NotesDatabase类和NotesDocument类,以及其他类(取决于你想做什么,以及你采取什么方法)。 在开始之前,您应该尝试了解DOM(Domino对象模型)。

无论如何,这是列表:

<强>属性

AddressBooks

CommonUserName

ConvertMime

CurrentAgent

CurrentDatabase

DocumentContext

EffectiveUserName

HttpURL

国际

IsOnServer

LastExitStatus

LASTRUN

NotesBuildVersion

NotesURL

NotesVersion

OrgDirectoryPath

平台

SavedData

服务器名称

URLDatabase

UserGroupNameList

用户名

UserNameList

UserNameObject

<强>方法

CreateAdministrationProcess

CreateColorObject

CreateDateRange

CreateDateTime

CreateDOMParser

CreateDxlExporter

CreateDxlImporter

CreateLog

是createName

CreateNewsletter

CreateRegistration

CreateRichTextParagraphStyle

CreateRichTextStyle

CreateSAXParser

CreateStream

CreateTimer

CreateXSLTransformer

评估

FreeTimeSearch

GetDatabase

GetDbDirectory

GetDirectory

GetEnvironmentString

GetEnvironmentValue

GetPropertyBroker

GetUserPolicySettings

HashPassword

初​​始化

InitializeUsingNotesUserName

ResetUserPassword

解决

SendConsoleCommand

SetEnvironmentVar

UpdateProcessedDoc

VerifyPassword