【发布时间】:2016-05-14 05:49:16
【问题描述】:
我正在尝试自学 codeignighter,目前正在学习发送电子邮件。
我正在尝试加载电子邮件库,但不断收到“未定义属性:电子邮件::$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());
}
}
}
【问题讨论】:
-
确切的错误是什么?它来自这条线吗?
$this->load->library('email', $config); -
使用父级::__construct();不是父级::get_instance();
-
@ajmedway 是的,错误是消息:未定义的属性:Email::$load 和消息:调用非对象上的成员函数库()
-
你使用的是 $this,而不是 $CI ...使用 parent::__construct();
-
@devpro 谢谢你,我会试试这个,看起来这就是问题所在。现在本地主机出现错误,但我确定我可以解决这个问题。谢谢
标签: php codeigniter email codeigniter-3