Php 此脚本中的转义空间?

Php 此脚本中的转义空间?,php,Php,我使用PHP创建这个配置文件来生成一个可执行文件,当文件名没有空格时,它可以正常工作,但当文件有空格时,它就不工作了 文件名位于$readyFile变量内 我能做些什么来解决这个问题 $content = ";!@Install@!UTF-8! Title=\"Auto-Extract\" ExecuteFile=\"Runner.exe\" ExecuteParameters=\"--exe 2999.exe --file $readyFile\" ;!@InstallEnd@!"; $fp

我使用PHP创建这个配置文件来生成一个可执行文件,当文件名没有空格时,它可以正常工作,但当文件有空格时,它就不工作了

文件名位于$readyFile变量内

我能做些什么来解决这个问题

$content = ";!@Install@!UTF-8!
Title=\"Auto-Extract\"
ExecuteFile=\"Runner.exe\"
ExecuteParameters=\"--exe 2999.exe --file $readyFile\"
;!@InstallEnd@!";
$fp = fopen("config.txt","wb");
fwrite($fp,$content);
fclose($fp);

谢谢

您可以使用此正则表达式进行剥离

$content=preg_replace('/\s+/', '', $content);

您可以使用双转义引号(
\\\”
):


当PHP解析字符串时,它会变成
=“--exe 2999.exe--file\'your file here\'”
,因此内部引号仍然会对调用内的调用进行转义。

看起来您需要对其周围的一组引号进行双转义;
\\\”
介意举个例子吗\\\“$readyFile.\\\”这样?如果您试图去除
$readyFile
变量中的空白,这可能会有帮助:@exon;是的,但是没有圆点(你在字符串替换中使用;不需要concat)@Dave,做了一件好事。想将其添加为答案以便我可以接受吗?
$content = ";!@Install@!UTF-8!
Title=\"Auto-Extract\"
ExecuteFile=\"Runner.exe\"
ExecuteParameters=\"--exe 2999.exe --file \\\"$readyFile\\\"\"
;!@InstallEnd@!";