我有一个msword文件,它位于服务器上。
我想当用户尝试打开时,它将在他的计算机上以msword 直接打开。
<?php
$document ='MyWordDocument.docx';
/**Function to extract text*/
function extracttext($filename)
{
//Check for extension
$ext = end(explode('.', $filename));
//if its docx file
if($ext == 'docx')
$dataFile = "word/document.xml";
//else it must be odt file
else
$dataFile = "content.xml";
//Create a new ZIP archive object
$zip = new ZipArchive;
// Open the archive file
if (true === $zip->open($filename)) {
// If successful, search for the data file in the archive
if (($index = $zip->locateName($dataFile)) !== false) {
// Index found! Now read it to a string
$text = $zip->getFromIndex($index);
// Load XML from a string
// Ignore errors and warnings
$xml = DOMDocument::loadXML($text, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
// Remove XML formatting tags and return the text
return strip_tags($xml->saveXML());
}
//Close the archive file
$zip->close();
}
// In case of failure return a message
return "File not found";
}
echo extracttext($document);
我尝试了上面的代码,但是这段代码在浏览器中读取和显示内容。 我们可以用PHP实现这个吗?
答案 0 :(得分:0)
您唯一能做的就是将*文件下载到用户计算机中。不可能强迫他也打开文件。为什么?安全
*或显示下载对话框,取决于浏览器和设置。