PHP mail()函数的主题行中的间距

时间:2012-07-31 03:37:26

标签: php email

有没有人知道如何在使用php mail()回显变量和字符串本身之间为主题行添加空格?我试过这个

$subject = $user_data->first .' '.'recommends a place';

和这个

$subject = $user_data->first .' recommends a place';

但是当邮件发送时,它会显示'Kevinrecommends a place'

以下是完整的邮件代码:

$to = $form_input['email'];
$subject = $user_data->first .'  recommends a place on';


$msg = 
    'Hi,'."\r\n".
    "\r\n".
    'You were recommended a place by '.$user_data->first .'.'."\r\n".
    "\r\n".
    'Click the link to see it on **!'."\r\n".
    'www.**.com/'.$token."\r\n".
    "\r\n".
    'Cheers,'
    $from = 'From:noreply@**.com';


mail($to, $subject, $msg, $from);

2 个答案:

答案 0 :(得分:1)

这应该有效:

$subject = "{$user_data->first} recommends a place";

请注意文字周围的双引号。他们必须确保$user_data->first得到解释。

答案 1 :(得分:0)

$subject = $user_data->first . ' recommends a place';

这应该完全正常。现在,我有时会遇到奇怪的Unicode字符问题。您确定$user_data->first变量只包含字母吗?

试试这个(不要这样离开它,它会删除你字符串中的所有非字母字符):

$name = preg_replace('/[^a-zA-Z]/', '', $user_data->first);
$subject = $name . ' recommends a place';