阅读(3163)

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

最后一次修改 2018年01月06日

本文主要和大家分享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平台的office文档转pdf的实例(程序员的菜))。

既然,你看了该教程就应该不能否认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中文网其它相关文章!

相关推荐:

Linux安装配置php环境实例详解

Linux下安装IE的方法分享

linux下apache2+php+ssl的安装详解