Home  >  Article  >  Backend Development  >  How to convert doc files to pdf files in php

How to convert doc files to pdf files in php

王林
王林Original
2020-09-28 09:48:104157browse

php method to convert doc files to pdf files: 1. Edit the php.ini file and add [extension=php_com_dotnet.dll]; 2. Configure the office component service; 3. Use the ExportAsFixedFormat function to convert the file .

How to convert doc files to pdf files in php

Specific method:

(Recommended tutorial: php video tutorial)

1. Modification php.ini

  • Add: extension=php_com_dotnet.dll

  • Remove comment: com.allow_dcom = true

  • Restart the environment

2. Configure office support

  • Install the Microsoft office suite. (Office 2007 requires manual installation of `Microsoft Save as PDF and ——[Computer]——[My Computer]——[DCOM Configuration]——[Microsoft Wrord 97-2003 Document] Right-click [Microsoft Wrord 97-2003 Document] and set the properties [Identity] to [Interactive User]

  • Code implementation:

    /**
     * @desc   xmsb_wordToPdf         将word转换为pdf
     * @param  string    $wordPath    word原文件路径
     * @param  string    $outPath     pdf输出路径
     * @return string
     */
    function xmsb_wordToPdf($wordPath, $outPath)
    {
        // 原文件不存在则返回错误
        if(!file_exists($wordPath)) 
        {
            return 'word原文件不存在';
        }
        
        // 输出目录不存在则创建目录
        if(!file_exists($tmpPath = rtrim($outPath, basename($outPath))))
        {
            mkdir($tmpPath, 0777, true);
        }
        
        $filenamedoc = dirname(__FILE__)."/".$wordPath;
        $filenamepdf = dirname(__FILE__)."/".$outPath;
        
        // 删除已有同名文件
        if(file_exists($filenamepdf)) 
        {
            unlink($filenamepdf);
        }
        
        // 执行转换操作
        $word = new COM("word.Application") or die("Could not initialise Object");
        $word->Documents->Open($filenamedoc);
        $word->ActiveDocument->ExportAsFixedFormat($filenamepdf, 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);
        $word->Quit(false);
        unset($word);
        
        // 在页面中显示生成的pdf
        // header('Content-type: application/pdf');
        // header('filename='.$filenamepdf);
        // readfile($filenamepdf);
        
        return '转换成功';
    }
    
    // 测试运行
    echo xmsb_wordToPdf('./word/word1.docx', './pdf/output1.pdf');

    Related recommendations:

    php training

The above is the detailed content of How to convert doc files to pdf files in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn