使用CodeIgniter发送电子邮件会导致PHP错误

时间:2016-02-04 14:44:41

标签: php codeigniter email codeigniter-3

我试图教自己codeignighter,目前正在学习发送电子邮件。

我正在尝试加载电子邮件库,并且我不断收到“Undefined property:Email :: $ load”错误。

我已经尝试了最后一小时才发现问题,但不知道什么是错的,非常感谢任何帮助。

我的 email.php

    <?php
class Email extends CI_Controller
{
    function __construct()
    {
        parent::get_instance();
    }

    function index()
    {
        $config = Array(
            'protocol' => 'smtp',
            'smtp_host' => 'ssl://smtp.googlemail.com',
            'smtp_port' => 465,
            'smtp_user' => '****s@gmail.com',
            'smtp_pass' => '******'
        );

        $this->load->library('email', $config);

        $this->email->set_newline("\r\n");

        $this->email->from('****@gmail.com' , 'joe blog');
        $this->email->to('****@gmail.com');
        $this->email->subject('this is a test');
        $this->email->message('it is working .... great!');

        if($this->email->send())
        {
            echo 'your email was sent';
        }

        else
        {
            show_error($this->email->print_debugger());
        }
    }
}

2 个答案:

答案 0 :(得分:2)

我有同样的错误。

尝试加载电子邮件库,然后加载电子邮件配置,如下所示:

// email
$this->load->library('email');      
$config = array(
    'protocol' => 'smtp',
    'smtp_host' => 'ssl://smtp.gmail.com',
    'smtp_port' => 465,
    'smtp_user' => '********@gmail.com', // your user.
    'smtp_pass' => '****' // your password
);      
$this->load->library('email', $config);     

这里有关于它的官方文件:

http://www.codeigniter.com/user_guide/libraries/email.html

问候。

也是从@ devpro

中提到的

使用

parent::__construct();

答案 1 :(得分:0)

您是否定义了特殊协议来向您发送电子邮件?