2010-09-04 54 views
1

使用PHP的system函数,你怎么能传递参数到一个批处理文件?PHP系统批处理参数

它可能会是这个样子

system("batch.bat argument", $output);

我发现了如何用c执行它++可执行here

我猜测它应该是比较简单..

真正的问题是如何使用批处理文件接收参数?

+0

你究竟怎么写的。这有什么问题吗? – Mchl 2010-09-04 17:06:10

+0

不,您如何获得批处理文件的参数 – 2010-09-04 17:10:02

回答

4

你是对的,没有区别。这里是一个小的演示:

首先一个批处理文件,只是输出它的参数:

C:\Documents and Settings\SO>type a.bat 
@echo off 
echo %* 

使用system调用批处理文件传递ab为ARGS一个PHP程序:

C:\Documents and Settings\SO>type a.php 
<?php 
    system("a.bat a b",$out); 
?> 

在运行php时,调用system调用带有ab的bat文件作为参数,批处理文件运行并响应a在批处理文件b

C:\Documents and Settings\SO>php a.php 
a b 
+0

那么您如何得到arg [1] arg [2] etc ... – 2010-09-04 17:12:41

+0

传递给BAT(或CMD)文件的每个参数都是通过'%1'访问的, '%2',... – codaddict 2010-09-04 17:14:22

+0

在我使用'%*'程序一起访问它们的程序中。 – codaddict 2010-09-04 17:15:31