Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

19.11.2008, 11:32
|
|
Постоянный
Регистрация: 13.10.2007
Сообщений: 347
Провел на форуме: 1345617
Репутация:
115
|
|
Работа с .zip
Привет, есть файл зип, точнее их много, и они имеют разные имена, но у все расширения .zip.
Задача такая, нужно открыть файл, Найти в нем файл (во всех архивах от один и тот же, т.е. имеет одно и тоже имя), далее переименовать его, закрыть файл, вот все что требуется...
Как это реализовать?
|
|
|

19.11.2008, 12:14
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
http://ru2.php.net/zip
|
|
|

19.11.2008, 15:28
|
|
Reservists Of Antichat - Level 6
Регистрация: 10.04.2008
Сообщений: 299
Провел на форуме: 1199829
Репутация:
405
|
|
можно sh скриптом под linux'ом
|
|
|

19.11.2008, 16:09
|
|
Познающий
Регистрация: 23.09.2007
Сообщений: 75
Провел на форуме: 938032
Репутация:
86
|
|
PHP код:
<?php
$find = 'burn.exe'; // Файл который нужно переименовать
$rename = '1.exe'; // новое имя
$dir = '.'; // папка с архивами
$h = opendir($dir);
$zip = new ZipArchive;
while (($f = readdir($h)) !== false) {
if (!is_file($f)) continue;
if (substr($f, strrpos($f, '.')+1) != 'zip') continue;
$res = $zip->open($f);
if ($res === true) {
if ($zip->renameName($find, $rename))
echo $f . "... OK\n";
else echo 'File '. $find . ' not found in '. $f ."\n";
$zip->close();
} else echo "Error: ". $res;
}
?>
Переименовывает, только если файл находится в корне архива
|
|
|

19.11.2008, 18:02
|
|
Постоянный
Регистрация: 13.10.2007
Сообщений: 347
Провел на форуме: 1345617
Репутация:
115
|
|
t4Nk, класс инклудить нужно?
|
|
|

19.11.2008, 18:05
|
|
Познающий
Регистрация: 23.09.2007
Сообщений: 75
Провел на форуме: 938032
Репутация:
86
|
|
Сообщение от .::BARS::.
t4Nk, класс инклудить нужно?
стандартное дополнение php_zip
не помню, включено по умолчанию или нет =\
|
|
|

19.11.2008, 20:38
|
|
Members of Antichat - Level 5
Регистрация: 25.02.2007
Сообщений: 495
Провел на форуме: 3244717
Репутация:
1980
|
|
стандартное дополнение php_zip
не помню, включено по умолчанию или нет =\
это PECL расширение, в php.ini необходимо добавить строку для его использования.
Если таковой возможности нет, то лучше использовать класс PclZip (установка расширений не требуется)
|
|
|

27.11.2008, 09:47
|
|
Постоянный
Регистрация: 13.10.2007
Сообщений: 347
Провел на форуме: 1345617
Репутация:
115
|
|
zС какими архивами такое еще проканает?
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|