通过PHP编码执行Linux-CentOS命令行

时间:2013-06-28 09:33:52

标签: php linux centos libreoffice

我想知道我是否有办法通过php页面在Linux / CentOS中执行命令行?它的作用是命令行将在这个php页面上,并将在CentOS上运行以转换和生成文档。

以下是我尝试通过使用LibreOffice将文档从.doc / .docx转换为PHP的代码的一部分。

<?php

    $test = "`libreoffice --headless --nologo --convert-to pdf /var/www/html/TERMS/eroom/temp/1_44.docx --outdir /var/www/html/TERMS/eroom/temp`";   
                    echo exec($test,$array);       
                    print_r($array);
    ?>   

备注:

我已尝试和研究过如何做到这一点的无数方法,但无济于事。从shell exec,exec等尝试过但它不起作用。没有任何错误,我无法弄清楚它有什么问题。

但是,如果我在这里复制命令行并直接从CLI执行它,它就可以工作并输出转换后的文件。

谢谢!

1 个答案:

答案 0 :(得分:0)

检查你的php.ini。 exec命令可能在disable_functions字符串中给出。从此选项中删除它。

如果safe_mode禁止它,你可以通过以下方式打开它: 你的webserverconfig(httpd.conf)中的php_admin_value safe_mode关闭

对于这两种方法,重新加载/重新启动apache / web-server以加载新配置。