PHP:电子邮件主题

时间:2012-02-17 15:01:50

标签: php

我在内联网上有一个表单,当有人填写表单时,它会向某个部门发送内部电子邮件。
我试图让一个数组填充到主题行,但只是无法弄清楚如何。

我将数组填充到正常工作的体内的方式如下:

<?php
    # .. snip ..
    $message = $message.'<tr>
    <td colspan="4" valign="top" class="style7">&nbsp;</td>
    </tr>';                                                                                                                     
    for($i = 0; $i < count($arrEncoding); $i++) {
        $desc= $arrEncodingDesc[$i];    
        $value= $arrEncoding[$i];                                                         
        if ($_POST[$arrEncoding[$i]]) {                                  
            $message = $message.'<tr><td colspan="4" valign="top" class="style4">'.$desc.'</td></tr>';                               
        }
    }
    # .. snip ..
?>

我尝试了很多方法,以下只是我尝试过的一种方式的示例:

$subject = $message.'Event Request Form:'.$arrEncoding[$i];

所以基本上我需要将arrEncoding数组填充到主题字段中 任何帮助将不胜感激。我不知道我的问题是否足够简洁,我仍然是整个php世界的初学者。

1 个答案:

答案 0 :(得分:1)

作为一个快速回答,你可能想要这样的东西:

<?php
    $_POST = array('BuiltIn'=>1,'SelfEncode'=>1); #Sample data :-)
    $arrEncoding = array("BuiltIn", "Hosted", "SelfEncode");

    $submitted_ids = array_filter($arrEncoding, function($id){ return isset($_POST[$id]); });
    $subject = "We got email about: " . implode(' ', $submitted_ids);
    print $subject;
?>

请注意,此处使用的anonnymous function语法需要php 5.3.0 +