1

私が何かをするとき

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);

正常に動作します。それは修正できますか?

4

2 に答える 2

2

私の記憶が正しければ、パス名またはファイル名に空白が含まれている場合は、二重引用符を使用できます。

例えば:

exec('"c:\\Program Files (x86)\\wkhtmltopdf\\wkhtmltopdf.exe" --footer-center as  http://bbc.co.uk c:\\test2.pdf',$output);
于 2013-05-10T08:25:01.363 に答える
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);

動作します。

于 2013-05-10T08:20:44.483 に答える