2016-06-27 13 views
1

PHPのexec()で次のffmpegコマンドを実行しようとしていますが、二重引用符と一重引用符が必要なためexec()は失敗しています。PHPのexec()と二重引用符の併用

/usr/bin/ffmpeg -loop 1 -i /var/www/html/data/photos/576c2ecf766fe.png -vf "zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))':d=125" -c:v libx264 -pix_fmt yuv420p -t 5 -s hd1080 -crf 17 /var/www/html/ffmpeg/zoomout.mp4 

このスクリプトをPHPで実行するにはどうすればよいですか?

は、あなたはカプセル化のためのPHPで使用している方の引用タイプエスケープする必要が

+0

この意味はわかりません。例を教えてください。 – user1661677

+0

2つの内部二重引用符をエスケープするとうまくいった。ありがとうございました! – user1661677

答えて

1

ありがとうございます。ですから、exec('')を持っている仮定すると、それは次のようになります。

/usr/bin/ffmpeg -loop 1 -i /var/www/html/data/photos/576c2ecf766fe.png -vf "zoompan=z=\'if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))\':d=125" -c:v libx264 -pix_fmt yuv420p -t 5 -s hd1080 -crf 17 /var/www/html/ffmpeg/zoomout.mp4 

あなたがここにPHPの文字列、http://php.net/manual/en/language.types.string.phpについての詳細を読むことができます。 heredocとnowdocもうまくいくでしょう。

関連する問題