Я могу извлечь текстовое содержимое файла Docx, я хочу сделать то же самое для файла Doc. Я попытался использовать тот же код, но ничего не мог прочитать. Думаю, причина в том, что «форматы Doc не являются архивами на молнии». Вот код:Есть ли способ читать файлы Doc на PHP, подобные Docx?
function readDocx ($filePath)
{
// Create new ZIP archive
$zip = new ZipArchive;
$dataFile = 'word/document.xml';
// Open received archive file
if (true === $zip->open($filePath)) {
// If done, search for the data file in the archive
if (($index = $zip->locateName($dataFile)) !== false) {
// If found, read it to the string
$data = $zip->getFromIndex($index);
// Close archive file
$zip->close();
// Load XML from a string
// Skip errors and warnings
$xml = DOMDocument::loadXML($data, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
$contents = explode('\n',strip_tags($xml->saveXML()));
$text = '';
foreach($contents as $i=>$content) {
$text .= $contents[$i];
}
return $text;
}
$zip->close();
}
return "";
}
Пожалуйста, дайте мне знать, если есть способ извлечения текстового содержимого из файла Doc.
Нет, это не так просто, потому что это не является XML-документ, но «Слово Binary Document» есть читатели, там для PHP, который прочитал их, но это та же сложность, как чтение PDF. Таким образом, вам придется использовать предварительно созданную библиотеку. См. Это сообщение: http://stackoverflow.com/questions/7358637/reading-doc-file-in-php – TiMESPLiNTER
Это всегда приятно, прежде чем публиковать вопрос. Скорее всего, вы не сталкиваетесь с такой проблемой ... – Havelock
Спасибо, TiMESPLiNTER проверит некоторые библиотеки. Спасибо, Хавелок, я сделал Google об этом и не смог найти точное решение. Вот почему я задал вопрос. Иногда даже подобные вопросы не получают этой видимости и, что самое главное, когда вы спешите что-то прибить, вы делаете такие ошибки. –