代码之家  ›  专栏  ›  技术社区  ›  ParoX

php:mail命令的自定义参数?

  •  2
  • ParoX  · 技术社区  · 14 年前

    我使用MSTMP从各种SMTP帐户发送邮件。使用php的mail命令,它成功地使用默认帐户从mstmp发送邮件。

    但是,我想让它指定从哪个SMTP帐户发送邮件。使用mstmp,您可以使用以下命令执行此操作:msmtp--account=svh,其中svh是您命名的SMTP帐户。有关MSMTP的更多信息,请参见: msmtp sourceforce

    那么,我的选项是什么,是否有一个修改过的mail命令允许我使用--account参数来使用MSMTP?我应该只运行一个具有根权限的shell命令(不想这样做)。

    你将如何解决这个问题?

    1 回复  |  直到 14 年前
        1
  •  2
  •   ParoX    14 年前

    看起来MSMTP有一种方法可以将配置定义为系统范围的配置,这样WWW数据就可以实际运行该命令并拥有我需要的电子邮件。爱MsMTP。

    编辑:这是我的快速和肮脏的功能,我想做什么,以防有人以后需要这个。我强烈建议你做更多的错误检查。

    function msmtp($To, $Subject, $Body, $Headers, $Account) {
        $Email = "To: $To\nSubject: $Subject\n$Headers\n\n$Body\n";
        exec("echo '$Email' | msmtp --account=$Account $To");
    }
    

    它非常类似于php mail()函数,因此您可以使用msmtp帐户“apple”按如下方式向bill gates发送一封电子邮件:

    MSMTP(“ 比尔盖茨@microsoft.com “,” 嘿,请读这个,“你太有钱了,把你所有的钱都给我。” “,” 发件人:stevejobs@apple.com “,” 苹果 “”