PHP ZipArchive неанглийские имена файлов возвращают фанк-имена файлов в архиве
Этот код работает должным образом, чтобы сделать ZIP-файл с требуемыми файлами, кроме имен файлов в архиве, которые не на английском языке (в данном случае они иврит), имеют странные символы вместо правильных букв на иврите.
<?php
$filesfordown = $_POST['GEMin'];
if(empty($filesfordown))
{
echo "No files were seleceted for download.";
}
else
{
$zip_name = "RMW." . time() . ".zip";
$zip = new ZipArchive;
$zip->open($zip_name, ZipArchive::CREATE);
foreach ($filesfordown as $filefordown) {
$zip->addFile($filefordown);
}
$zip->close(); }
header('Content-Type: application/zip');
header("Content-disposition: attachment; filename='$zip_name'");
header('Content-Length: ' . filesize($zip_name));
readfile($zip_name);
ob_flush;
?>
Я немного искал, кажется, что iconv, setlocalte или mb_convert_encoding могут помочь, но все, что я пробовал, не сработало.
Есть идеи?
Постскриптум Как побочный вопрос, есть ли способ не сохранять структуру каталогов в zip?
ETA: пример$_post
может быть www.domain.com/path/ שלום_01. mp3