[英](PHP) Passing multiple parameters within shell_exec() to bash script
我正在尝试通过 PHP 通过 Ansible 发送 email。
我的 PHP 脚本包含以下代码:
$dest = "myemail@company.com";
$oggetto = "Test subject";
$corpo = "Test email body";
shell_exec("//opt/rh/httpd24/root/var/www/html/cugo/runyaml.sh '$dest' '$oggetto' '$corpo'");
runyaml.sh 包含:
ansible-playbook /opt/rh/httpd24/root/var/www/html/cugo/mailSender.yml --extra-vars "destinatari=$dest oggetto=$oggetto corpo=$corpo"
而 mailSender.yml 包含:
-
name: emailsender
hosts: localhost
tasks:
-
name: sendmail
mail:
host: xxx
port: 25
username: xxx
password: xxx
to: "{{ destinatari }}"
from: automation@company.com
subject: "{{ oggetto }}"
body: "{{ corpo }}"
subtype: html
不幸的是,邮件没有发送,而如果我在“mailSender.yml”中手动输入“to, subject, body”,那么一切正常。 我很确定我在传递参数的方式上做错了什么
尝试添加点“。” 连接变量
shell_exec("//opt/rh/httpd24/root/var/www/html/cugo/runyaml.sh '" . $dest."' '".$oggetto."' '".$corpo."'");
您还可以尝试打印接收到的参数以验证它们是否正确传递
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.