Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод из rar 
:(
    Опции темы
Matematik
Дата 24.11.2006, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: нет
Всего: 50



Нашел расширение php_rar. Но там можно извлекать только в файл.
Как Извлечь в временный файл вывести на экран и удалить?
Я понимаю что надо:
1. получить неповторяющиеся имя
2. rar->extract в "temp/неповторяющиеся имя"
3. вывести содержание файла
4. удалить файл

Мне бы хотябы имена функция, сам найду как использовать.
PM MAIL WWW ICQ   Вверх
szz
Дата 24.11.2006, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Непонятно, тебе что, нужно уникальное имя чтоли получить?
  Так это uniqid()
Только учти, на Линуксе в некоторых версиях PHP эта функция жуть какая медленная.


--------------------
PM   Вверх
Matematik
Дата 24.11.2006, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: нет
Всего: 50



Надеюсь жуть это < 1сек
Есть как 1 командой вывести содержание файла и удалить его?
типа
print_file();
deletefile()

И как получить путь к временной директории?
PM MAIL WWW ICQ   Вверх
Matematik
Дата 24.11.2006, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: нет
Всего: 50



szz, спасибо.

вот код, может кому-нить понадобится
Код

<?
echo "<PRE>";
$archive_name = $_GET['rar'];
$entry_name = $_GET['entry'];
$dir_to_extract_to = $_ENV['TEMP'];
$tmp_fil = $dir_to_extract_to.'/'.uniqid().'.txt';
echo "$archive_name
$entry_name
$tmp_fil
----------------------
";
$rar = rar_open($archive_name) OR die('failed to open ' . $archive_name);
$entries_list = rar_list($rar);
$entry = rar_entry_get($rar, $entry_name) OR die('failed to find ' . $entry_name . ' in ' . $archive_name);
$entry->extract(FALSE, $tmp_fil);
rar_close($rar);
echo file_get_contents($tmp_fil);
unlink($tmp_fil);
?>


PM MAIL WWW ICQ   Вверх
tolik777
Дата 25.11.2006, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 19.6.2006

Репутация: нет
Всего: 2



Цитата

Нашел расширение php_rar.

А где нашел? Дай ссылку если не трудно.
Там нет возможности создания запаролленого rar-архива?
PM MAIL WWW ICQ   Вверх
szz
Дата 25.11.2006, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

Репутация: 8
Всего: 33



Да, ссылочку бы  smile 
   И нет ли там возможности делать солидный архив? Чтоб если например два одинаковых файла в разных папках - то архив создавался бы с учетом этого.


--------------------
PM   Вверх
skifoz
Дата 25.11.2006, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 23.1.2006
Где: Россия

Репутация: нет
Всего: 1



Юзайте rar через system() да и все.
PM MAIL WWW   Вверх
Matematik
Дата 25.11.2006, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: нет
Всего: 50



php_rar 
Данное расширение позволяет читать Rar архивы, однако не дает возможности их записывать
http://ru.php.net/manual/ru/ref.rar.php

Цитата(tolik777 @  25.11.2006,  11:41 Найти цитируемый пост)
Там нет возможности создания запаролленого rar-архива? 
нет.
Для этого
Цитата(skifoz @  25.11.2006,  13:05 Найти цитируемый пост)
Юзайте rar через system() да и все. 


PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.2031 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.