在linux centos上通过php运行pdftk

发布于 2025-01-01 16:41:15 字数 575 浏览 1 评论 0原文

我想在我的网络服务器上运行 pdftk。它是带有 PHP 5.3.2 的 Linux Centos。

当我通过命令行连接它时,我

pdftk --version

这样做

pdftk A=p1-9.pdf cat A1 output p1.pdf

就可以了。

现在,我通过 php 执行此操作:

exec(pdftk A=p1-9.pdf cat A1 output p1.pdf)

这是不行的。为什么??我搜索了文件的链接,但看起来没问题。

这也不起作用:

exec(pdftk --version)

我用这个 如何安装 pdftk我的服务器上有 Pdftk?

那么出了什么问题?

感谢您的帮助!

I would like to run pdftk on my webserver. It's a Linux Centos with PHP 5.3.2.

When I connect it by commande line I do

pdftk --version

It's OK

pdftk A=p1-9.pdf cat A1 output p1.pdf

It's OK.

Now, I do this by php :

exec(pdftk A=p1-9.pdf cat A1 output p1.pdf)

It isn't OK. Why?? I search about the link of file, but it looks OK.

This doesn't work too :

exec(pdftk --version)

I install pdftk with this How do I install Pdftk on my server?

So what's wrong??

Thank for your help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遇见了你 2025-01-08 16:41:15

我以前遇到过这个问题。假设您将命令字符串括在引号中(如 gioele 指出的),问题可能是您需要 运行系统命令时设置您的路径。试试这个:(

$command = "pdftk A=p1-9.pdf cat A1 output p1.pdf";
system("PATH=\$PATH:/usr/bin/ && $command",$response);
if ($response===FALSE){
   //there was an error, handle it
}

我也在那里添加了一些响应处理)。如果这不起作用,请检查您应该使用什么路径(这取决于您安装 PDFTK 的位置)。

我相信您也可以通过使用 putenv("PATH=" .[your path]); 获得相同的结果,我在这里使用了 system() ,但是 < code>exec() 应该以同样的方式受到影响

I've run into this issue before. Assuming that you're wrapping your commands string in quotes (as gioele noted), the issue may be that you need to set your path when running the system command. Try this:

$command = "pdftk A=p1-9.pdf cat A1 output p1.pdf";
system("PATH=\$PATH:/usr/bin/ && $command",$response);
if ($response===FALSE){
   //there was an error, handle it
}

(I've added a little response handling there as well). If that doesn't work, check to see what path you should use (it will depend on where you installed PDFTK).

I believe you can also get the same result by using putenv("PATH=" .[your path]); and I've used system() here, but exec() should be affected in the same way

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文