У меня есть zip-файл с фотографией с именем «test1ąąążżżźźźźććć.jpg», так как вы можете видеть, что он содержит только специальные символы из языка Poli sh. Когда я пытаюсь извлечь его с помощью кода PHP, он возвращает имя файла «test1СÑÑ╛╛╛½½½½ååå.jpg». Но когда я извлекаю имена файлов со специальными символами из более чем одного языка, например "test2óôśšźżžøùú.jpg" (в это имя также включен Poli sh char), он работает хорошо, без проблем. Таким образом, в большинстве случаев PHP извлечение zip происходит только при именах файлов языка Poli sh.
Вот код, который я использовал для извлечения zip-файлов:
function extractZip($file, $path=NULL) {
if($path == NULL)
$path = pathinfo(realpath($file), PATHINFO_DIRNAME);
$zip = new ZipArchive;
$res = $zip->open($file);
if ($res === TRUE) {
$zip->extractTo($path);
$zip->close();
echo "Ok, $file extracted to $path";
} else {
echo "Error";
}
}
extractZip('test.zip');
I Я уверен, что это не проблема с моей системой или zip-файлом. Когда я извлек zips обычным windows explorer, а не по сценарию, все работало хорошо. Пожалуйста, помогите, я перепробовал много методов и искал в Интернете, и я не знаю, как это решить.