2008-10-31 83 views
10

是否有人找到一個好的類或其他文件將.doc文件轉換爲html或可以讀取並轉換爲html的內容?將.doc轉換爲html格式在php中

我一直在四處尋找幾個小時,並只發現需要服務器上的msword轉換文件。我非常確定這不是一種選擇,但我實際上並沒有與我的託管服務提供商討論過這個問題。

目標是讓用戶能夠將文件上傳到我的服務器,服務器處理轉換,然後將其顯示爲html,就像使用Google功能查看html功能一樣。

回答

0

您的系統上安裝開放式辦公,並在命令行中運行以下命令:

在/ usr/bin中/ soffice -headless「宏:///Standard.Convert。 SaveAsHtml(Test.doc的)」

+0

謝謝安東尼,但我找不到任何相關文檔。你能提供一個參考嗎? – Alexar 2010-12-13 14:16:45

6

intall和AbiWord的使用,像這樣:

AbiWord --to=html archivo.doc 

你可以從PHP調用此命令。

+0

我可以將它與我的網絡服務器一起用於快速轉換嗎? – 2013-12-16 16:47:20

+1

@Papa_Jay是的,你可以(我幾年前在一個joomla插件中使用它...) – CronosNull 2014-01-24 19:45:58

0

該PHP將您的* .DOC文件上傳到上傳文件夾並以HTML格式打開它。

<?php 
function content($file){ 
$data_array = explode(chr(0x0D),fread(fopen($file, "r"), filesize($file))); 
$data_text = ""; 
foreach($data_array as $data_line){ 
if (strpos($data_line, chr(0x00) !== false)||(strlen($data_line)==0)) 
{} else {if(chr(0)) {$data_text .= "<br>"; 
         $data_text .= preg_replace("/[^a-zA-Z0-9\s\,\.\-\n\r\[email protected]\/\_\(\)]/","",$data_line); 
     } 
    }   
} 
return $data_text;} 
$destination = str_replace('index.php', '', $_SERVER['SCRIPT_FILENAME']); 
$destination.= "upload/"; 
$maxsize = 5120000; 
if (isset($_GET['upload'])) { 
     if($_FILES['userfile']['name'] && $_FILES['userfile']['size'] < $maxsize) { 
     if(move_uploaded_file($_FILES['userfile']['tmp_name'], "$destination/".$_FILES['userfile']['name'])){ 
     $file = $destination."/".$_FILES['userfile']['name']; 
     $data = content($file); 
     echo $data; 
     } 
     } 
}else{ 
     echo "<form enctype='multipart/form-data' method='post' action='index.php?upload'> 
      <input name='userfile' type='file'> 
      <input value='Upload' name='submit' type='submit'> 
      </form>"; 
     } 
?>