将参数传递给正在运行的批处理文件


passing parameter to running batch file

我已经运行批处理文件作为我的套接字侦听器,将从连接的客户端接收数据。我想通过网页向连接的客户端发送命令,但我有问题,或者我不知道如何获得这项工作,将参数传递给我正在运行的批处理文件侦听器。

我尝试在发送命令到我正在运行的批处理文件的客户端。

if(isset($_GET['comparam'])) {
  $mycommand = $_GET['comparam'];
   foreach ($clients as $send_sock) {
       socket_write($send_sock, $mycommand);
   }
}

但是什么都没有发生,我的代码不工作。

我很感激有人能帮我解决这个问题。

你正在从一个bacth文件运行php,所以它是php CLI。

$_GET是web版本,这样的概念在命令行中不存在。

你传递参数的方式是这样的:

C:'some'path'yourScript.php comparam

然后从脚本中读取如下值:

if(isset($argv[1])){  
   $mycommand = $argv[1];
   foreach ($clients as $send_sock) {
      socket_write($send_sock, $mycommand);
   } 
}

$argv -传递给脚本的参数数组