1

我使用 Python 中的 subprocess 对象来调用 PHP 脚本。该脚本运行得很好,我可以从该过程中获取输出。

import subprocess

proc = subprocess.Popen("php /route/to/my/script/php", shell=True, stdout=subprocess.PIPE)
script_response = proc.stdout.read()

但是,我需要向脚本发送一些参数。我怎样才能做到这一点。我会假设我需要通过 Popen 的参数之一发送帖子?

4

1 回答 1

2

我认为您应该在终端中使用 args :

想象一下你想传递字符串参数arg1arg2arg3

你的 python 类应该看起来像

proc = subprocess.Popen("php /route/to/my/script/php arg1 arg2 arg3", shell=True, stdout=subprocess.PIPE)

那么参数的 vardump 看起来像

<?php var_dump($argv);  ?>

并会返回:

array(4) {
  [0]=>
  string(10) "script.php"
  [1]=>
  string(4) "arg1"
  [2]=>
  string(4) "arg2"
  [3]=>
  string(4) "arg3"
}

这就是你如何添加参数

于 2013-11-02T21:12:20.950 回答