PHP——获取主题行中的时间

PHP——获取主题行中的时间,php,email,Php,Email,我通过SecondLife将数据发送到PHP脚本,PHP脚本通过电子邮件发送数据 我的问题是如何将时间(变量$time)放入电子邮件的主题行。现在,它只是忽略变量$time 这是我代码的一部分: $time = $_POST["time"]; $log = $_POST["log"]; $to = "OSU@gmail.com"; $subject = <<<TEST New Visitor; VDC2; $time TEST; $theMes = <<&l

我通过SecondLife将数据发送到PHP脚本,PHP脚本通过电子邮件发送数据

我的问题是如何将时间(变量$time)放入电子邮件的主题行。现在,它只是忽略变量$time

这是我代码的一部分:

$time = $_POST["time"];
$log = $_POST["log"];

$to = "OSU@gmail.com";
$subject =  <<<TEST
New Visitor; VDC2; $time
TEST;

$theMes =  <<<TEST
Visitor Log for VDC2:
$log
TEST;

$headers = 'From: TecEdgeDL@gmail.com' . "\r\n" .
'Message-Id: TecEdgeDL@gmail.com' . "\r\n" .
'Reply-To: TecEdgeDL@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $theMes, $headers);
$time=$\u POST[“time”];
$log=$_POST[“log”];
$to=”OSU@gmail.com";

$subject=为什么不这样写$subject变量呢

$subject = "New Visitor; VDC2; " . $time;
在编写时,请编写如下$theMes:

$theMes = "Visitor Log for VDC2:" . "\n\n" . 
   $log;

如果不起作用,请尝试对内容进行编码。我仍然不知道为什么它不会显示,但这可能值得一试,因为邮件确实进行编码

$subject = "New Visitor; VDC2; " . $time;
$subject = '=?UTF-8?B?'.base64_encode($subject).'?=';

可能有分号或时间戳让PHP感到困惑。

忽略变量$time是什么意思?你确定
$time
不是空的/空的吗?你可以用
string.isNullOrEmpty($time)检查它可能您没有邮寄数据?试试$\u GET['time'](或$\u REQUEST)@BrianDriscoll:是的,我确信它不是空的,我在代码的其他部分回显了$time,并且如前所述,确保“time”值被检索到了——当然,假设你已经这样做了。我只是像我那样写它,因为它没有从Second Life中正确获取变量。我写这封信的方式是有原因的。。我不是一个PHP的家伙。另外,正在检索$time变量。请按建议的方式尝试,并报告,因为如果检索到时间值,它将正常工作。另一种方法是$subject=sprintf(“newvisitor;VDC2;%s”,$time);另外,您可能不想更改$theMes的一个原因是,如果日志值包含大量文本,那么您可能已经在处理每行最多70个字符的换行,因此现在可能只更改$subject。如果遇到该问题,您可以使用wordwrap(…)处理邮件。我尝试了您的$subject行,但这两行仍然没有打印出$time,但会打印其他所有内容。有没有一种方法可以让你知道邮件发送的时间,这样你就不用担心第二人生了?