CakeEmail - 我如何使用它?

时间:2012-02-12 17:03:13

标签: php cakephp cakephp-2.0

在我的控制器中,我使用的电子邮件功能包含以下代码:

public function email($mail = null){

    $email = new CakeEmail('default');
    $email->config('default');

    $email->from(array('test@test.com' => 'testing'));
    $email->to('$mail');
    $email->subject('Approved');
    $email->send('Approved');

在顶部我有

App::uses('AppController', 'Controller', 'CakeEmail', 'Network/Email');

但是,我收到错误致命错误:在'。

中找不到类'CakeEmail'

我不确定我哪里出错了。有人可以帮忙吗?

4 个答案:

答案 0 :(得分:36)

您需要更改App :: uses并将两者分开:

App::uses('AppController', 'Controller');
App::uses('CakeEmail', 'Network/Email');

答案 1 :(得分:5)

App::uses()只允许两个参数:$className$location。你传递了4个参数,这就是为什么没有加载CakeEmail。

有关详细信息,请参阅http://api20.cakephp.org/class/app#method-Appuseshttp://book.cakephp.org/2.0/en/core-utility-libraries/app.html#App::uses

答案 2 :(得分:2)

文档很清楚: http://book.cakephp.org/2.0/en/core-utility-libraries/email.html?highlight=cakeemail#CakeEmail

“首先,你应该确保加载课程”

第二次看:你的app :: uses()是错误的。查看记录方式。

答案 3 :(得分:1)

您可以使用控制器中的电子邮件组件

public $components = array('Email'); 

public function email(){
  $this->Email->to = 'yourmail@mail.com';  
  $this->Email->subject = 'Subject - ';   
  $this->Email->from = 'sender@mail.com';  
  $this->Email->send('message');
}