数组([0] => 'c:\Program' 未被识别为内部或外部命令,[1] => 可运行的程序或批处理文件。)在 php

Array ( [0] => 'c:\Program' is not recognized as an internal or external command, [1] => operable program or batch file. ) in php

我要执行以下命令

exec("c:\Program Files\Handbrake\HandBrakeCLI -i D:/wamp/www/upload_google_drive/output.flv -e x264 -a 1 -E faac -6 dpl2 -R Auto -D 0.0 -f mp4 -I -m -x level=30:bframes=0:weightp=0:cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:no-fast-pskip=1:subme=6:8x8dct=0:trellis=0 -b 250 -B 64 -R 48 -X 480 -w 480 -l 320 -2 -o D:/wamp/www/upload_google_drive/w2.mp4 2>&1",$output);

在 php 但执行后我收到以下错误消息:

Array ( [0] => 'c:\Program' is not recognized as an internal or external command, [1] => operable program or batch file. )

我认为你的问题是 'Program' 和 'Files'

之间的文件名中的 space

因为我不知道 'exec' 来自哪种语言,所以我无法提供确切的解决方案,但如果我是你,我会尝试在

周围添加引号
c:\Program Files\Handbrake\HandBrakeCLI 

也许

exec("'c:\Program Files\Handbrake\HandBrakeCLI' -i D:/wamp/www/upload_google_drive/output.flv -e x264 -a 1 -E faac -6 dpl2 -R Auto -D 0.0 -f mp4 -I -m -x level=30:bframes=0:weightp=0:cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:no-fast-pskip=1:subme=6:8x8dct=0:trellis=0 -b 250 -B 64 -R 48 -X 480 -w 480 -l 320 -2 -o D:/wamp/www/upload_google_drive/w2.mp4 2>&1",$output);

这是因为你的路径中有一个space。您必须将路径放在 "

之间

像这样:

exec("\"c:\Program Files\Handbrake\HandBrakeCLI\" -i D:/wamp/www/upload_google_drive/output.flv -e x264 -a 1 -E faac -6 dpl2 -R Auto -D 0.0 -f mp4 -I -m -x level=30:bframes=0:weightp=0:cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:no-fast-pskip=1:subme=6:8x8dct=0:trellis=0 -b 250 -B 64 -R 48 -X 480 -w 480 -l 320 -2 -o D:/wamp/www/upload_google_drive/w2.mp4 2>&1",$output);

路径 "Program Files" 包含一个 space 所以你需要用单引号将它括起来 '

c:\Program Files

例如:

exec('"c:\Program Files\Handbrake\HandBrakeCLI -i D:/wamp/www/upload_google_drive/output.flv -e x264 -a 1 -E faac -6 dpl2 -R Auto -D 0.0 -f mp4 -I -m -x level=30:bframes=0:weightp=0:cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:no-fast-pskip=1:subme=6:8x8dct=0:trellis=0 -b 250 -B 64 -R 48 -X 480 -w 480 -l 320 -2 -o D:/wamp/www/upload_google_drive/w2.mp4 2>&1"',$output);