Вызов неопределенной функции Zend\Mail\Header\iconv_mime_decode()

В настоящее время я разрабатываю приложение с Zend Expressive. Я использую zend-mail для отправки регистрационного письма.

Однако вот код:

<?php

namespace App\Mail\Service;

use Zend\Mail\Transport\Smtp;
use Zend\Mail\Transport\SmtpOptions;
use Zend\Mail\Message;

class MailService
{
    private $transport;
    private $options;

public function __construct() {
    $this->transport = new Smtp();
    $this->options =  new SmtpOptions([
        'name' => 'XXXXXX',
        'host' => 'XXXXXX',
        'port' => 587,
        'connection_class'  => 'plain',
        'connection_config' => [
            'username'  => 'XXXXXX',
            'password'  => 'XXXXXX',
            'ssl'       => 'tls'
        ],
    ]);
    $this->transport->setOptions($this->options);
}

public function sendRegisterMail($email)
{
    $message = new Message();
    $message->addFrom('XXXXXX', 'XXXXXX');
    $message->addTo($email);
    $message->setEncoding("UTF-8");
    $message->getHeaders()->addHeaderLine('Content-Type', 'text/plain; charset=UTF-8');
    $message->setSubject('Subject');
    $message->setBody('This is the Message Body');

    $this->transport->send($message);

}
}

?>

Я получил вышеуказанное сообщение об ошибке. ICONV установлен и работает.

Вот код вызова этой функции:

public static function mimeDecodeValue($value)
{
    $decodedValue = iconv_mime_decode($value, ICONV_MIME_DECODE_CONTINUE_ON_ERROR, 'UTF-8');
    return $decodedValue;
}

С уважением, Нереальность.


person Unreality    schedule 02.12.2016    source источник
comment
куда и как вы звоните mimeDecodeValue()?   -  person Dragos    schedule 02.12.2016
comment
zend-mail/src/Header/Date.php вызывает функцию для сборки заголовков электронной почты. $value = HeaderWrap::mimeDecodeValue($value);   -  person Unreality    schedule 02.12.2016
comment
Вы пытались установить точку останова в этой строке и проверить в отладчике, что происходит в этой конкретной строке?   -  person Dragos    schedule 02.12.2016
comment
Он пытается прыгнуть в middlewareDispatcher компонента zend-stratigility, а затем выдает throwable в строке 222, входящая трассировка стека   -  person Unreality    schedule 02.12.2016


Ответы (1)


включите extension=iconv.so в файле php.ini.

person Pradeep Gurung    schedule 02.12.2016
comment
ладно.... Я чувствую себя глупо прямо сейчас.... ты был прав. Хотя iconv, казалось, был активирован, на самом деле это не так. - person Unreality; 02.12.2016
comment
Для моего извинения... документы говорят, что он включен по умолчанию, хотя его можно отключить, скомпилировав с --without-iconv. В этом была проблема. - person Unreality; 02.12.2016