如何运行“.exe”文件抛出我的PHP类? 或者还有其他方法吗?
我已经使用过了
exec();
passthru();
功能,但它给我错误,我的代码:
$path = "C:\Program Files\Softland\doPDF 7\dopdf.exe";
$result = passthru('$path 2>&1');
错误:
'$path' is not recognized as an internal or external command, operable program or batch file.
答案 0 :(得分:2)
这不是一个好习惯,但......
$result = passthru($path.' 2>&1');
或
$result = passthru("$path 2>&1");
你应该(如你所见)将$path
变量放在单引号之外(阻止变量评估和替换)或放入双qoutes(允许变量替换)
答案 1 :(得分:1)
如果您希望$ path替换为变量值,则需要使用双引号
$result = passthru("$path 2>&1");
答案 2 :(得分:0)
问题是你使用单引号,所以传递给shell的字符串实际上是'$ path 2>& 1'。在PHP中,单引号中不会发生变量替换,只有两次。
因此,您需要连接字符串或将其放在双引号中。
$ result = passthru(“$ path 2>& 1”);