在 Go 中获取 PHP 配置变量

我想获取命令的输出php -r 'echo get_cfg_var("some_var");'以根据预定义的值对其进行检查。目前,我有以下代码:


variableName := "default_mimetype"

cmd := exec.Command("php", "-r", "'echo get_cfg_var(\"" + variableName + "\");'")

out, err := cmd.CombinedOutput()

跑完后,


err.Error() 返回 "exit status 254"


out 是 "PHP Parse error:  syntax error, unexpected end of file in Command line code on line 1"


是什么导致了这个错误?我没有正确地逃避某些事情吗?


慕妹3242003
浏览 179回答 1
1回答

皈依舞

问题是你的论点。如果您更改已写入 shell 命令的内容,它将如下所示:$ php -r "'echo get_cfg_var(\"default_mimetype\");'"您会注意到在导致语法错误的第二个参数周围有一组额外的引号。您可以通过将您的更改exec.Command为以下内容来解决此问题:cmd := exec.Command("php", "-r", "echo get_cfg_var(\"" + variableName + "\");")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go