PHP system() 调用外部程序并传递参数
使用PHP的时候,需要调用已有的程序作为项目的一部分,因为已经存在程序,所以直接使用system()函数是最直接的想法。
system的详细说明可以查看PHP手册的system
注意事项
使用system()函数调用外部程序时,当需要传递参数时,要注意书写的格式。
当不需要要传递参数时,可以直接写成:
$cmd = "path\a"; //a表示要支持的程序
system($cmd, $return_var);
但是,如果要传递参数的话,因为路径中含有”\”的原因,如果在直接写成:
$cmd = "path\a $parameters"; // parameters表示参数
system($cmd, $return_var);
会导致识别出错,系统无法找到对应的程序。
要改写为:
$cmd = "\"path\\a\" $parameters";
system($cmd, $return_var)
例如要调用在C盘目录下的php文件夹下的个名为a的外部程序,传递的参数为$username,则cmd应该是:
$cmd = "\"C:\\PHP\a" $username";