2012-09-10 3 views
0

У меня есть архив почтового индекса, содержащие папки и файлы, которые имеют арабские названия (имена), как:получить арабские папки имен из почтового архива с помощью PHP

مجلد جديد، ملف... 

Я пытаюсь извлечь эти папки с помощью PHP.

Проблема заключается в том: после загрузки этого файла и извлечь его, имена собираются в промах, как:

مجلد جديد => ê¤é§ ¤§ï§ 

Я использую этот кусок кода для извлечения:

$saved_file_location = $target . $filename; 

if(move_uploaded_file($source, $target . $filename)) { 
    openZip($saved_file_location); 
} 

function openZip($file_to_open) { 
    global $target; 
    global $unique_folder; 
      global $changed; 
      $zip = new ZipArchive(); 
     $x = $zip->open($file_to_open); 
     if ($x === true) { 
      $zip->extractTo($target . $unique_folder); 
      $zip->close(); 

      unlink($file_to_open); #deletes the zip file. We no longer need it. 
          $changed = true; 
     } else { 
      die("There was a problem. Please try again!"); 
     } 
    } 
+0

Откуда возникает функция 'openZip'? – Oswald

+0

'function openZip ($ file_to_open) { \t \t глобальный $ target; \t \t глобальный $ unique_folder; global $ changed; $ zip = новый ZipArchive(); \t \t \t $ x = $ zip-> open ($ file_to_open); \t \t \t, если ($ х === истина) { \t \t \t \t $ zip-> extractTo ($ целевой $ unique_folder.); \t \t \t \t $ zip-> close(); \t \t \t \t unlink ($ file_to_open); #deets zip-файл. Нам это больше не нужно. $ changed = true; \t \t \t} еще { \t \t \t \t умереть ("Был проблема Пожалуйста, попробуйте еще раз."); \t \t \t} \t \t} ' –

ответ

0

Zip файлы не знают о кодировке имен файлов. Вы должны угадать кодировку имен файлов и преобразовать их в кодировку, используемую вашей файловой системой.

+0

Я знаю кодировку ... Я уверен, что это UTF-8 ... как преобразовать их в мой рабочий кодирования, которая также является UTF-8 ... но после того, как Экстракция имена стали в беспорядке ... как их исправить ??? –

Смежные вопросы