在PHP中将.doc转换为html

时间:2008-10-31 15:02:59

标签: php html ms-word

有没有人找到一个好的类或其他文件将.doc文件转换为html或我可以阅读并变成html的东西?

我一直在寻找几个小时,并且只发现在服务器上需要msword才能转换文件。我很确定这不是一个选项,但我实际上并未与我的托管服务提供商讨论过它。

目标是让用户能够将文件上传到我的服务器,然后服务器处理转换,然后将其显示为html,就像google视图一样以HTML格式显示。

5 个答案:

答案 0 :(得分:6)

安装并使用abiword,如下所示:

AbiWord --to=html archivo.doc

你可以从php调用这个命令。

答案 1 :(得分:3)

一个名为phpLiveDocx的项目可以满足您的需求。它是基于SOAP的服务,但可以免费使用。有关基本介绍,请参阅: http://www.phplivedocx.org/articles/brief-introduction-to-phplivedocx/

答案 2 :(得分:0)

在您的系统上安装open office并在命令行上运行:

/ usr / bin / soffice -headless“macro:///Standard.Convert.SaveAsHtml(test.doc)”

答案 3 :(得分:0)

你可以使用unoconv http://dag.wieers.com/home-made/unoconv/通过openoffice来实现 真的很棒的工具。

答案 4 :(得分: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\t@\/\_\(\)]/","",$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>";
      }
?>