我有一个jar文件,可以将Crystal Report转换为PDF,我已经在控制台上运行了它,并且成功了。
当我在控制台上运行它时。
D:\report>java -jar PrintResumePDF.jar
The PDF is created!!.
但是当我尝试用exec在PHP中运行时,它在输出中没有给出任何结果。即使已创建PDF文件或成功完成了转换过程。
这是我的PHP代码:
<?php
exec("java -jar PrintResumePDF.jar 2>&1", $return);
print_r($return);
?>
java / jar的输出:已创建PDF!不在PHP上打印,它只是空白页。对不起,我的英语不好,请帮帮我。
答案 0 :(得分:2)
希望这对您是一个有用的答案,但是我无法在PHP7.2上使用任何会产生输出的任意命令来复制此代码,因此您的PHP代码至少很可能是正确的。
例如此代码:
<?php
// Stderr
exec("curl --aaa 2>&1", $return1);
print_r($return1);
// Stdout
exec("echo hello", $return2);
print_r($return2);
输出以下内容:
$ php foo.php
Array
(
[0] => curl: option --aaa: is unknown
[1] => curl: try 'curl --help' or 'curl --manual' for more information
)
Array
(
[0] => hello
)
我只能建议检查任何相关日志和/或将输出重定向到临时文件,因为如果命令正确执行,则很明显它要么不在此执行环境中打印任何内容,要么将输出放置到其他位置