如何使用PHP在Windows上运行这些Unix类型的命令

如何使用PHP在Windows上运行这些Unix类型的命令,windows,command-line,Windows,Command Line,我发现了一个PHP项目,它包装了所有的主命令行图像优化器,这是我一直在寻找的东西,已经有一段时间了 到目前为止,我遇到的问题是我想在Windows系统上运行它。下面是从脚本运行的一些命令 所以我的问题是,我如何在我的windows系统上运行这些外部程序,它们有windows版本,只是让PHP调用正确的命令 所以像/usr/bin/identification这样的东西如何转化为在Windows系统上运行 exec("/usr/bin/identify -quiet -format \"%m\"

我发现了一个PHP项目,它包装了所有的主命令行图像优化器,这是我一直在寻找的东西,已经有一段时间了

到目前为止,我遇到的问题是我想在Windows系统上运行它。下面是从脚本运行的一些命令

所以我的问题是,我如何在我的windows系统上运行这些外部程序,它们有windows版本,只是让PHP调用正确的命令

所以像
/usr/bin/identification
这样的东西如何转化为在Windows系统上运行

exec("/usr/bin/identify -quiet -format \"%m\" $file_path", $return, $error);

$cmd = "/usr/bin/jpegtran -copy none -progressive -optimize $src_file > $dest_file";

$cmd = "/usr/bin/convert $src_file $raw_file";

exec("/usr/bin/pngcrush -rem alla -brute -reduce $raw_file $dest_file");

$cmd = "/usr/bin/gifsicle -O2 $src_file > $dest_file";

$cmd = "/usr/bin/pngquant -ordered 256 $src_file";

 $cmd = "/usr/bin/pngout -c3 -d8 -y -force $quant_file $out_file";

这些并不是真正特定于Unix的应用程序。它们是各种各样的图形编辑程序。大部分或全部可能在Windows上可用;您只需要安装它们(就像其他人已经在您最初编写脚本的Unix设备上安装它们一样)

这里唯一特定于Unix的东西是它查找程序的路径(
/usr/bin
查找示例中的所有内容)。在Windows上,应用程序通常安装到
C:\ProgramFiles
C:\ProgramFiles(x86)
下的子目录

识别
转换
是系统的一部分。您需要下载并安装它,然后更改
exec
调用以指向安装exe的路径(例如,在
C:\Program Files
下)。由于安装路径可能包含空格,您需要引用它,例如:

exec("\"C:\\Program Files (x86)\\ImageMagick-6.6.1-Q16\\identify\" -quiet -format \"%m\" $file_path", $return, $error);

您正在运行的其他应用程序--
jpegtran
pngcrush
gifsicle
pngquant
,以及
pngout
,都是独立的应用程序。你可以用谷歌搜索他们的个人下载页面。

太好了,我只是不知道如何从Windows调用他们,所以我只需要调用那里的位置,谢谢,我可能会将它们全部安装到这个应用程序的目录中。1关于路径的更多问题,我在
E:\Server\\u ImageOptimize\optipng\optipng.exe安装了optipng
我在上面运行命令时是否需要使用
E:\Server\\u ImageOptimize\optipng`或
E:\Server\u ImageOptimize\optipng\optipng.exe`?与ImageMagick
E:\Server\\u ImageOptimize\ImageMagick\Identification
相同,它应该在该路径中具有.exe扩展名还是仅在文件夹中?您需要给出文件名,因此如果它是例如
X:\Foo\Foo.exe
则需要说
X:\Foo\Foo.exe
,也就是说,您可以不使用尾随的
.exe
,但还需要其他所有内容。