Я использую библиотеку imap php для извлечения электронных писем и сохранения прикреплений.Имена кодировки имени файла Imap php
Когда я Ват получить отсоединяемые, я использую функцию
$partStruct = imap_bodystruct($imap, $mailNum, $partNum);
Он должен иметь имя файла в parameters
атрибута, но вот то, что у меня есть в этом атрибуте:
(
[type] => 3
[encoding] => 3
[ifsubtype] => 1
[subtype] => VND.OPENXMLFORMATS-OFFICEDOCUMENT.SPREADSHEETML.SHEET
[ifdescription] => 0
[ifid] => 0
[bytes] => 53308
[ifdisposition] => 1
[disposition] => ATTACHMENT
[ifdparameters] => 0
[ifparameters] => 1
[parameters] => Array
(
[0] => stdClass Object
(
[attribute] => NAME
[value] => =?KOI8-R?B?4snUy8/JztkueGxzeA==?=
)
)
)
Как я вижу, это файл xlsx, но имя файла =?KOI8-R?B?4snUy8/JztkueGxzeA==?=
У кого-нибудь есть видели это раньше? Как получить исходное имя файла utf-8?
Е-майл был отправлен от Imac и имя файла изначально был на русском языке. Я могу попытаться расшифровать имя, зачистив =?KOI8-R?B?
, но это похоже на какой-то стандарт? Что это за стандарт?
Они называются «закодированные слова». См. Http://en.wikipedia.org/wiki/MIME#Encoded-Word – Max