当我做
之类的事情时exec("c:\\Program Files (x86)\\wkhtmltopdf\\wkhtmltopdf.exe --footer-center as http://bbc.co.uk c:\\test2.pdf",$output);
没有任何反应。文件存在,以下行返回1.
echo file_exists("c:\\Program Files (x86)\\wkhtmltopdf\\wkhtmltopdf.exe");
如果我改变它
exec("d:\\wkhtmltopdf\\wkhtmltopdf.exe --footer-center as http://bbc.co.uk c:\\test2.pdf",$output);
工作正常。可以修复吗?
答案 0 :(得分:1)
您需要引用可执行文件的路径或转义空格。之一:
exec("c:\\Program^ Files^ (x86)\\wkhtmltopdf\\wkhtmltopdf.exe --footer-center as http://bbc.co.uk c:\\test2.pdf",$output);
或
exec("\"c:\\Program Files (x86)\\wkhtmltopdf\\wkhtmltopdf.exe\" --footer-center as http://bbc.co.uk c:\\test2.pdf",$output);
会奏效。
答案 1 :(得分:1)
如果我没记错,当路径名或文件名中有空格时,可以使用双引号。
例如:
exec('"c:\\Program Files (x86)\\wkhtmltopdf\\wkhtmltopdf.exe" --footer-center as http://bbc.co.uk c:\\test2.pdf',$output);