【发布时间】:2014-06-02 10:39:59
【问题描述】:
我想在用户上传后提取一个 docx 我想显示内容。但似乎我不知道如何调用它.. 因为它一直显示“未找到文件”。 如果我定义它会完美显示:
$document = try.docx
所以我知道它不能调用上传的文件。这是源代码:
<?php
include 'configure.php';
if(isset($_FILES['uploaded_file']))
{
$document = $_FILES ['uploaded_file']['tmp_name'];// here was the issue.. tried many way but still failed
function extracttext($filename)
{
$ext = explode('.', $filename);
$ext=end ($ext);
if($ext == 'docx')
$dataFile = "word/document.xml";
else
$dataFile = "content.xml";
$zip = new ZipArchive;
if (true === $zip->open($filename))
{
if (($index = $zip->locateName($dataFile)) !== false)
{
$text = $zip->getFromIndex($index);
$xml = new DOMDocument;
$xml->loadXML($text, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
return strip_tags($xml->saveXML());
}
$zip->close();
}
return "File not found";
}
echo extracttext($document);
}
?>
【问题讨论】:
-
不确定是否可以使用 ZipArchive 打开像这样的临时文件。我认为您应该首先将其移动到文件系统上的真实位置,然后使用 ZipArchive 打开它。
标签: php file-upload docx text-extraction