4

我正在使用 wkhtml 库生成 html 到 pdf,但它不接受 url 中的第二个参数?

exec('C://"Program Files"//wkhtmltopdf.exe ' . 'http://localhost/test.php?a=351&b=2' . ' ' . $file_name . '');

有什么想法吗?

4

2 回答 2

5

尝试将命令设置为变量,回显它并直接在可执行文件上尝试,而不是从 PHP 中尝试。这可能会给你一个可读的错误。

另外,尝试将网址放在引号中,我刚刚尝试了以下命令,效果很好

wkhtmltopdf.exe "https://www.google.com/search?hl=fi&safe=off&biw=1195&bih=732&site=imghp&tbm=isch&sa=1&q=test&oq=test" test.pdf
于 2012-08-09T13:50:04.707 回答
1

我建议使用escapeshellarg()(转义 & 导致问题是 shell 命令的保留字符)

$print_url = escapeshellarg("http"//site.com/print_page.php?arg1=$arg1&arg2=$arg2");

然后:

$print = exec("/usr/bin/wkhtmltopdf -T 0 -B 0 -L 0 -R 0  $print_url  $path/$file 2>&1");
于 2017-08-19T06:22:26.127 回答