我想向我們的CMS添加一個詞彙導入功能,唯一的問題是我似乎無法找到一個用於閱讀docx文件(Word 2007)的好庫。在PHP中閱讀docx(Office Open XML)
有沒有人有一些建議,圖書館應該能夠提取文件的內容和基本的樣式,如斜體,粗體,上標?
感謝您的幫助
我想向我們的CMS添加一個詞彙導入功能,唯一的問題是我似乎無法找到一個用於閱讀docx文件(Word 2007)的好庫。在PHP中閱讀docx(Office Open XML)
有沒有人有一些建議,圖書館應該能夠提取文件的內容和基本的樣式,如斜體,粗體,上標?
感謝您的幫助
或者,既然你要求圖書館,你可能想看看像Docvert。我只是根據你的問題環顧四周,這是我迄今爲止最喜歡的PHP。你輸入word文件的位置,它將它轉換成簡單的屬性和所有好東西。
docx
文件實際上是對文檔的XML只是容器。你應該能夠解壓縮docx文件,然後轉到word文件夾裏面,然後到document.xml。這有實際的文字。但是像字體和樣式這樣的東西是在docx容器中的其他xml文件中的,所以你可能會想弄清楚什麼是什麼以及如何匹配它(開始使用命名空間,我敢打賭)。
但是,是的,解壓縮該文件,然後使用simplexml將其轉換爲您可以實際弄亂的東西。
有做這樣的庫,但它與Zend框架的工作可能它會幫助你 它被稱爲phpLiveDocx:http://www.phplivedocx.org/downloads/ 該庫下的新BCD許可
我剛剛找到具有讀寫支持的庫在Codeplex Forge http://openxmlapi.codeplex.com上檢查它,並且它在GPLv2的許可下。
使用OpenOffice將docx文檔轉換爲odt。然後使用eZ Components來進行解析和導入。他們實際上在其CMZ eZ Publish中使用了導入。
PHPDocX PRO包括從它TransformDoc類,可以讀取.DOCX(ZIP)文件,並生成XHTML(或PDF):
...
require_once 'phpdocx_pro/classes/TransformDoc.inc';
$doc = new TransformDoc();
$doc->setStrFile($file->filepath);
$doc->generateXHTML();
$html = $doc->getStrXHTML();
這需要許可證 – user478636 2011-11-03 15:13:30
@ user478636,Nope,它在社區版上可用。 – 2013-07-12 07:37:50
這裏是我發現
http://webcheatsheet.com/php/reading_the_clean_text_from_docx_odt.php
一個簡單可行的解決方案
看起來很有前途,但我將不得不製作一個API。 – RageZ 2009-10-01 04:58:23