PHP - 如何使用参数运行批处理文件?

时间:2017-03-14 13:36:58

标签: php batch-file cmd exec

我正在为我的业务开发一个新的门户网站..我必须为不同的PC名称启动许多批处理文件..所以我尝试用一​​个参数运行我的批处理..

if (err) { ... }

但如果我运行此命令,则没有任何反应.. 旧版本有效:

$path = $db->givePath($service);
        $path = $path . " " . "PCNAME"; 
        if(exec("cmd /c" . $path)){
                echo "Successful sent";
        } else {
            echo "Error";
        }

有人可以在这帮助我吗?

2 个答案:

答案 0 :(得分:0)

您可以使用cmd shell:

system("cmd /c C:" . $path_to_file);

答案 1 :(得分:0)

将PCNAME作为参数传递时可能会遇到问题,因为它包含需要转义的字符。您可以在escapeshellarg TL上阅读更多内容; DR是否会逃避任何会导致执行以意外方式退出的控制字符。使用像{= 1}}的PCNAME的UNC路径之类的东西会让windows认为还有另一个参数被指定。

escapshellarg()