PHP exec可以';无法访问FFMPEG。而我可以在命令提示符下

PHP exec可以';无法访问FFMPEG。而我可以在命令提示符下,php,path,command-line-interface,exec,command-prompt,Php,Path,Command Line Interface,Exec,Command Prompt,我在windows上安装了FFMPEG。我将它添加到路径变量中。无论我在哪个文件夹中,我都可以在命令提示符下访问ffmpeg(这告诉我ffmpeg+path变量正在按预期工作) PHP 瓦鲁垃圾场 'ffmpeg' is not recognized as an internal or external command, -|- operable program or batch file. 当我在命令提示符下复制完全相同的突击队(ffmpeg-y-ic:/wamp64/test.mp4-st

我在windows上安装了FFMPEG。我将它添加到路径变量中。无论我在哪个文件夹中,我都可以在命令提示符下访问ffmpeg(这告诉我ffmpeg+path变量正在按预期工作)

PHP

瓦鲁垃圾场

'ffmpeg' is not recognized as an internal or external command, -|- operable program or batch file.
当我在命令提示符下复制完全相同的突击队(
ffmpeg-y-ic:/wamp64/test.mp4-strict-2-b:v500k-vf scale=-2:123 C:/wamp64/test.mp4 2>&1
)时,它工作得非常好。不管文件夹位置如何


为了让PHP能够找到
ffmpeg
,我是否需要采取其他/不同的步骤?

您是否可以尝试使用PHP定义的常量

DIRECTORY_SEPARATOR
而不是/

此外,如果ffmpeg.exe程序不在%path%中,则必须使用该程序的完整路径,例如:

'C:' . DIRECTORY_SEPARATOR . 'Program Files' . DIRECTORY_SEPARATOR . 'ffmpeg' . DIRECTORY_SEPARATOR . 'bin'. DIRECTORY_SEPARATOR . 'ffmpeg.exe'

看起来windows阻止了另一个应用程序访问终端,您是否尝试过这样执行
C:\ffmpeg\bin\ffmpeg.exe
?@PutraPurba是的,这是可行的,但我还想使用一个库,它不使用完整路径。C:\ffmpeg\bin是否已添加到路径变量中?
'C:' . DIRECTORY_SEPARATOR . 'Program Files' . DIRECTORY_SEPARATOR . 'ffmpeg' . DIRECTORY_SEPARATOR . 'bin'. DIRECTORY_SEPARATOR . 'ffmpeg.exe'