【问题标题】:PHP exec() with mixed quotesPHP exec() 带混合引号
【发布时间】:2016-06-27 12:54:01
【问题描述】:

我正在尝试使用 PHP 的 exec() 运行以下 ffmpeg 命令,但由于需要双引号和单引号,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 ffmpeg


【解决方案1】:

您需要转义您在 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 字符串的信息,http://php.net/manual/en/language.types.string.php。 heredoc 和 nowdoc 也可以使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-29
    • 2012-12-14
    • 1970-01-01
    相关资源
    最近更新 更多