ffmpeg exec doesen中的PHP变量不起作用

时间:2016-06-03 10:14:32

标签: php ffmpeg exec

echo exec('C:\ffmpeg\bin\ffmpeg.exe -framerate 1/5 C:\xamppp\htdocs\gen\image1.jpg -c:v libx264 -r 30 -pix_fmt yuv420p C:\xamppp\htdocs\gen\out.mp4 2>&1');

这是作品,但与""它没有用。

和""并且其中的变量不起作用。

echo exec("C:\ffmpeg\bin\ffmpeg.exe -framerate 1/5 -i C:\xamppp\htdocs\gen\$image.jpg -c:v libx264 -r 30 -pix_fmt yuv420p C:\xamppp\htdocs\gen\$outputname.mp4 2>&1");

1 个答案:

答案 0 :(得分:0)

从手册中: 如果字符串用双引号(")括起来,PHP将解释更多特殊字符的转义序列

http://php.net/manual/en/language.types.string.php#language.types.string.syntax.double

您需要将反斜杠转义为\\

然后,您正在做的事情非常容易受到代码注入的影响。更好地阅读escapeshellcmd