因為安裝的的xampp不知道如何查看我的Apache版本是多少,就先把com.allow_dcom=true打開了,但是仍舊報錯說找不到com類,然后就把下面的extension擴展添加到php.ini中然后就可以看了
要想完美解決,office轉pdf或者html,最好還是用windows office軟件,libreoffice不能完美轉換,wps沒有api。
先確認com模塊是不是開啟,phpinfo里面如果有com_dotnet模塊,說明已開啟,如果沒有,修改php.ini,
com.allow_dcom = true
前面的注釋去掉,重啟就OK了,php官方網站說,php5.4.5之前,com模塊是內置的,其實也不一定全是,官網下的php 5.3.39,com模塊就沒有內置。
如果不是內置模塊的話,php.ini加上,前提你的ext文件夾下,有該擴展
extension=php_com_dotnet.dll
然后重啟就OK了
- function word2html($wordname,$htmlname)
- {
- $word = new COM("word.application") or die("Unable to instanciate Word");
- $word->Visible = 1;
- $word->Documents->Open($wordname);
- $word->Documents[1]->SaveAs($htmlname,8);
- $word->Quit();
- $word = null;
- unset($word);
- }
- word2html('D:/www/test/6.docx','D:/www/test/6.html');
注意:
1,轉換出來的html,查看源碼,比較亂的
2,轉換過程中會調用winword.exe
3,如果頁面一直在加載,把文檔重命名,然后在重新轉