1

我正在使用 PHP 调用/操作 Word 文档,使用 COM。我正在做的一件事是将另存为文本格式。因为我正在处理许多 Word 文档,所以我不希望文档显示在最近的文件列表中。

VBA SaveAs 函数有一个可选参数来完成此操作,但我想知道,有没有一种方法可以将命名参数传递给 COM 对象,类似于您可以在 VBA 中执行的操作?

例如,在 Word 中,我可以这样写:

ActiveDocument.SaveAs(Filename:='mynewfilename.doc', FileFormat:=2, AddToRecentFiles:=False)

有没有办法在 PHP 中使用 COM 对象来做到这一点?

4

1 回答 1

0

由于 PHP 不理解命名参数的概念(至少,不像 VB/A 那样),您必须尊重方法签名并以正确的顺序传递参数。

VB 命名参数的存在只是为了允许您以错误的顺序传递参数,但该方法仍然具有已定义的签名,并且您可以传递未命名的参数,只要它们以正确的顺序。

假设签名与此处定义的签名相同,我想这应该可行:

$com->SaveAs('mynewfilename.doc', 2, NULL, NULL, FALSE);

免责声明:我假设 PHP COM 会处理NULLFALSE明智地处理 - 这可能是一个愚蠢的假设。

于 2012-10-15T17:18:08.123 回答