Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何命令PHP在PC上打开MS Word并在其上打开MS Word文件_Php - Fatal编程技术网

如何命令PHP在PC上打开MS Word并在其上打开MS Word文件

如何命令PHP在PC上打开MS Word并在其上打开MS Word文件,php,Php,基本上,我要做的是在PHP上编写一个小脚本,当用户单击“查看文件”时,客户端计算机上的MS Word应用程序应该自动打开(如果存在),并显示/打开服务器上的文档文件。我尝试过使用exec()和COM,但它们似乎都不能正常工作。下面是我用来打开MS Word的代码 com_load_typelib('Word.Application'); $word = new COM("word.application"); $docName='C:/xampp/htdocs/phpword

基本上,我要做的是在PHP上编写一个小脚本,当用户单击“查看文件”时,客户端计算机上的MS Word应用程序应该自动打开(如果存在),并显示/打开服务器上的文档文件。我尝试过使用exec()和COM,但它们似乎都不能正常工作。下面是我用来打开MS Word的代码

com_load_typelib('Word.Application');
$word = new COM("word.application");
$docName='C:/xampp/htdocs/phpword/helloWorld.docx';
$word->Documents->Open($docName);
这是我用来打开文件的代码

致命错误:未捕获错误:在C:\xampp\htdocs\phpword\word.php中找不到类“COM”:16堆栈跟踪:#0{main}在第16行的C:\xampp\htdocs\phpword\word.php中抛出


这就是我得到的错误。

您无法从PHP服务器控制客户端的计算机<例如,code>exec()将在PHP服务器上执行一个程序,但不能在客户端计算机上运行程序、打开文件等。这是黑客的工作:)

那么“邮件”应用程序是如何做到这一点的呢?如果文件是.doc或.docx格式,它会自动打开MS Word。您在评论中描述的只是一个简单的下载过程。当您从电子邮件中打开附件时,浏览器将尝试下载该附件。根据浏览器及其设置,您可以有不同的行为。比如我的firefox,当我下载一个文件时,它会弹出一个我想做的事情:打开文件或保存文件。例如Opera,它会自动将文件保存在我的桌面上,而无需询问。效果取决于客户端的浏览器设置。