【问题标题】:trouble getting php exec() to run无法让 php exec() 运行
【发布时间】:2013-01-29 00:59:59
【问题描述】:

我正在尝试运行以下命令,但据我所知它没有运行,因为没有生成文件。我根本没有收到任何错误消息,当我在我的 linux 机器上测试它时,这个命令运行良好,但我正在将我的网站转移到运行 xampp 的 Windows 机器上,因为我几天都没有互联网连接。所以我正在更改命令以使用 Windows。我认为我的命令中一定有错误,但由于我在 Windows 上使用 apache 和 php 的经验很少,我希望其他人能够发现错误(如果有)。

$command = 'C:\\Program Files (x86)\\PDF Labs\\PDFtk Server\\bin\\pdftk.exe C:\\xampp\\htdocs\\lc712\\pdf\\TimeCard.pdf fill_form C:\\xampp\\htdocs\\lc712\\pdf\\results\\' . $userName . '.fdf' . ' output C:\\xampp\\htdocs\\lc712\\pdf\\results\\' . $userName . '.pdf flatten';
    exec($command);

这是最终有效的代码:

$command = '"C:\Program Files (x86)\PDF Labs\PDFtk Server\bin\pdftk.exe" C:\xampp\htdocs\pdf\TimeCard.pdf fill_form C:\xampp\htdocs\pdf\results\\' . $userName . '.fdf' . ' output C:\xampp\htdocs\pdf\results\\' . $userName . '.pdf flatten';
    exec($command);

【问题讨论】:

    标签: php pdftk


    【解决方案1】:

    C:\Program Files (x86)\PDF Labs\PDFtk Server\bin\pdftk.exe 包含空格,因此 Windows 将尝试使用参数 Files(x86)\PDFLabs\PDFtkServer\bin\pdftk.exe、... 执行 C:\Program

    尝试用引号转义路径:

    $command = '"C:\\Program Files (x86)\\PDF Labs\\PDFtk Server\\bin\\pdftk.exe" C:\\xampp\\htdocs\\lc712\\pdf\\TimeCard.pdf fill_form C:\\xampp\\htdocs\\lc712\\pdf\\results\\' . $userName . '.fdf' . ' output C:\\xampp\\htdocs\\lc712\\pdf\\results\\' . $userName . '.pdf flatten';
    exec($command);
    

    【讨论】:

    • 就是这样,除了我的字符串中的错误不仅仅是我已经更新了问题以反映对我有用的问题
    猜你喜欢
    • 2013-03-09
    • 1970-01-01
    • 2020-05-07
    • 2016-04-21
    • 1970-01-01
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    • 2014-12-30
    相关资源
    最近更新 更多