【发布时间】:2012-05-04 12:56:57
【问题描述】:
我正在尝试通过 codeigniter 框架通过两种不同的方式发送电子邮件,其中一种方式我的电子邮件进入了垃圾文件夹,但它真的很奇怪......
所以我的第一次尝试是创建一个控制器并在索引函数中放入以下代码:
$this->load->library('email');
$this->email->from('no-reply@domain.example.com', 'Your Name');
$this->email->to('email@example.com');
$this->email->subject('Email Test');
$this->email->message('Testing the email class.');
$this->email->send();
echo $this->email->print_debugger();
这样邮件可以正常到达,而不是垃圾邮件...
当我创建一个模型以便以后可以将其用于其他功能以发送电子邮件时,我将上面的代码替换为以下代码:
$this->load->library('email');
$this->load->model("email_model");
$this->email_model->sendEmail(null, 'email@gmail.com', 'title', 'message');
而 email_model 模型包含以下代码:
<?php
class email_model extends CI_Model {
function __construct()
{
// Call the Model constructor
parent::__construct();
}
public function sendEmail($from = null, $to = null, $subject = null, $message = null){
$this->email->from('no-reply@domain.com', 'from user');
$this->email->to($to);
$this->email->subject($subject);
$this->email->message($message);
$this->email->send();
}
}
为什么会这样?
【问题讨论】:
-
比较两封邮件的邮件头。两者之间一定有什么不同。我在这里看到的唯一不同的是“垃圾邮件”电子邮件上的消息和主题要短得多。您的电子邮件提供商是否过滤掉了单个单词的消息?
-
为什么我在标题中看不到任何区别?可能应该有不同的东西吧?我不知道电子邮件提供商是否过滤掉了任何字词...我的电子邮件提供商是 godaddy btw...
标签: php email codeigniter