如何将参数传递到在 python 中执行的 php 中?
问题内容
我需要将一个参数传递到在 python 中执行的 php 代码中
import subprocessdef php(code): p = subprocess.Popen(["php","-r", code], stdout=subprocess.PIPE, stderr=subprocess.PIPE) out = p.communicate() #returns a tuple (stdoutdata, stderrdata) if out[1] != b'': raise Exception(out[1].decode('UTF-8')) return out[0].decode('UTF-8')val = str(1234)code = """ function my_encoder($in){ $out = base_convert($in,16,36);return ($out);}print(my_encoder('"""+{val}+"""'));"""print(php(code))
我不知道如何在 php 代码中输入 val 作为 my_encoder 函数的参数。
正确答案
如果 {, } 不是 python 的 f 字符串的一部分,请勿使用,因为这会导致语法无效。所以只需去掉这些大括号即可:
print(my_encoder('"""+val+"""'));"""