Я получаю следующее предупреждение в файле mylog:
PHP Warning: iconv(): Charset parameter exceeds the maximum allowed length of 64 characters in /home/jnj/PlancakeEmailParser.php on line 283
Блок, о котором идет речь (часть getBody()
функция):
if (!$detectedContentType)
{
// if here, we missed the text/plain content-type (probably it was
// in the header), thus we assume the whole body is what we are after
$body = implode("\n", $this->rawBodyLines);
}
// removing trailing new lines
$body = preg_replace('/((\r?\n)*)$/', '', $body);
if ($contentTransferEncoding == 'base64')
$body = base64_decode($body);
else if ($contentTransferEncoding == 'quoted-printable')
$body = quoted_printable_decode($body);
if($charset != 'UTF-8') {
// FORMAT=FLOWED, despite being popular in emails, it is not
// supported by iconv
$charset = str_replace("FORMAT=FLOWED", "", $charset);
$bodyCopy = $body;
$body = iconv($charset, 'UTF-8//TRANSLIT', $body);
if ($body === FALSE) { // iconv returns FALSE on failure
$body = utf8_encode($bodyCopy);
}
}
return $body;
}
я использую PlancakeEmailParser.php
разбирать электронные письма. Я погуглил ошибку и ничего не выскакивает у меня. У кого-нибудь есть идеи, как или если мне нужно с этим бороться?
Вы говорите, что используете класс PlancakeEmailParser.php.
просто найдите строку: —
$bodyCopy = $body;
и изменить на: —
$bodyCopy = quoted_printable_decode($body);
Других решений пока нет …