Linux平台中使用PHP把word转pdf的实现方法

前端之家收集整理的这篇文章主要介绍了Linux平台中使用PHP把word转pdf的实现方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Linux平台中使用PHP把word转pdf的实现方法

1、ubantu下安装libreoffice

sudo apt-get install libreoffice

2、命令行执行word转pdf

将 /home/wordToPdf/wordFiles/目录下的CAS.docx转成pdf存放到 /home/wordToPdf/pdfFiles 目录下:

libreoffice --headless --convert-to pdf:writer_pdf_Export /home/wordToPdf/wordFiles/CAS.docx --outdir /home/wordToPdf/pdfFiles

/usr/share/fonts 下放中文字体
fc-cache-fv 更新字体缓存

PHP中执行的代码

$a='./doc/2.doc'; $b='./pdf'; //$str ="libreoffice --headless --convert-to pdf:writer_pdf_Export ./doc/2.doc --outdir ./pdf"; //$str ='ls '.'./'; $str = "export HOME=/tmp && libreoffice --headless -convert-to pdf /var/www/html/doc/2.doc -outdir /var/www/html/pdf"; var_dump(system($str));

在linux中使用PHP将word文档转为pdf

使用本教程需要在linux中安装openoffice,改页面中有详细的安装与使用教程 (

)。

既然,你看了该教程就应该不能否认linux的权限的确很坑人。而用PHP将word文档转pdf文档,更是需要一大堆权限设置。因此,在这里我就给PHP用到有关目录和文件都给予了777权限。

从该文中(linux平台的office文档转pdf的实例(程序员的菜))可以很清楚的知道重点代码:(如下)

java -jar /usr/local/wenku/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/1.doc /tmp/1.pdf

从以上代码中可知,PHP要用到java命令的执行权限,需要/tmp的读写权限。

查看java命令的位置:which java

假设java命令的位置为:/bin/java

要给java设置777的权限:chmod 777 /bin/java

给/tmp文件夹及以下的文件设置权限: chmod -R 777 /tmp

设置好权限后。即可使用PHP的exec函数运行该段代码:java -jar /usr/local/wenku/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/1.doc /tmp/1.pdf

以上这篇Linux平台中使用PHP把word转pdf的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

猜你在找的PHP相关文章