【问题标题】:how to execute command prompt from php如何从php执行命令提示符
【发布时间】:2015-12-17 05:13:57
【问题描述】:

我对 php 很陌生。 我有以下命令:

cd E:\PHP\home_php\img\tmp
E:
montage -mode concatenate -tile 3x3 *.png result.png

我想在 php 中从 cmd.exe 执行命令(如果可能的话也可以从 javascript 执行)。 现在我必须执行 .bat 文件,但该文件有一些静态值。我需要传递一些动态值。如何使用所需的命令打开 cmd。 我尝试了 php montage,但我需要 .bat 之类的 cmd 来自 php/JS。

【问题讨论】:

    标签: javascript php cmd imagemagick montage


    【解决方案1】:

    试试这个:echo exec('your command');

    【讨论】:

    • 你的意思是:函数 execInBackground() { $cmd1='cd E:/PHP/home_php/satimg/tmp'; $cmd2='E:'; $cmd3='montage -mode concatenate -t​​ile 3x3 *.png result.png'; if (substr(php_uname(), 0, 7) == "Windows"){ pclose(popen("start /B ".$cmd1, "r")); pclose(popen("开始 /B".$cmd2, "r")); pclose(popen("开始 /B".$cmd3, "r")); } else { exec($cmd . " > /dev/null &"); } }
    【解决方案2】:

    http://php.net/manual/en/function.exec.php 你也可以出于一些奇怪的原因使用反引号:http://php.net/exec

    【讨论】:

      【解决方案3】:

      您可以使用多个 PHP 函数来执行系统代码:

      shell_exec("your command") 将执行代码并将输出返回给您
      system("your command", $returnCode) 将执行您的命令并返回您的命令的数字状态
      exec("your command", $outputArray, $returnCode) 将执行命令并在 outputArray 中逐行返回您的输出+ 返回码

      在问这样一个简单的问题之前,你真的应该先去http://php.net 搜索所需的功能,而不是在这里问。

      【讨论】:

      • 我已经看到了,但是如何将命令添加为批处理命令。我检查了它的一些代码,但没有奏效,这就是我在这里发布的原因。你能给出windows cmd.exe中批处理命令的例子吗
      • 您可以使用“&&”符号连接单独的命令。例如:cd .. && dir 会在目录树中向上移动并执行 DIR 命令。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-18
      • 2017-02-28
      相关资源
      最近更新 更多