Перейти к содержанию

Linux+PHP проблема с кодировкой файлов в архиве


Рекомендуемые сообщения

Доброе время суток!

Имеем: CentOS 5.8, PHP 

Имеется база данных документов к которой осуществляется доступ через web интерфейс(его пишем самостоятельно)

к документам прикреплены файлы(их имена хранятся в таблице)

Задача: Отправить клиенту файлы в архиве по электронной почте.

Как реализовано:

средствами php создается временный каталог, куда копируются все файлы

потом средствами ОС запускается архиватор (пробовались tar rar 7z). он создает архив и отправляет пользователю на email.

Проблема. русские имена файлов приходят в архиве иероглифами.

Как решалось:

1. расшариваем папку с файлами через самбу и монтируем ее с параметром iocharset=cp1251 и работаем с ней. проблема в общем то решилась, но только для архиватора tar. архивы сделанные rar и 7z по прежнему приходят кракозябрами.

2. непосредственно в коде к каждому файлу применяется команда convmv -f utf8 -t cp1251 $filename, но результат тот же.

как заставить rar и 7z делать архивы с корректными именами файлов?

tar меня не устраивает т.к. проблема с разбивкой больших архивов на части. да и пугаются пользователи увидев незнакомый тип файла tar

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...