Так что я точно не знаю, что мне нужно было бы показать вам, ребята, как бы то ни было, если вам нужно больше кода, пожалуйста, не стесняйтесь спрашивать:
Таким образом, этот метод настроит initMailer для Zend в нашем приложении:
protected function _initMailer()
{
if ('testing' !== APPLICATION_ENV) {
$this->bootstrap('Config');
$options = $this->getOptions();
$mail = new Zend_Application_Resource_Mail($options['mail']);
}elseif ('testing' === APPLICATION_ENV) {
//change the mail transport only if dev or test
if (APPLICATION_ENV <> 'production') {
$callback = function()
{
return 'ZendMail_' . microtime(true) .'.tmp';
};
$mail = new Zend_Mail_Transport_File(
array('path' => '/tmp/mail/',
'callback'=>$callback
)
);
Zend_Mail::setDefaultTransport($mail);
}
}
return $mail;
}
Вы можете увидеть закрытие, которое находится внутри. Когда я запускаю какие-либо тесты, которые используют этот код, я получаю:
Exception: Serialization of 'Closure' is not allowed
и, следовательно, все тесты в связи с этим "закрытием" терпят неудачу. Поэтому я здесь прошу вас, ребята, что я должен делать.
Для разъяснения вышеизложенного все делали это, говоря, что любое электронное письмо, которое мы отправляем, мы хотим хранить информацию об этом письме в папке в каталоге/tmp/mail/в файле.