Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
3 / 3 / 0
Регистрация: 20.09.2012
Сообщений: 41

Как распаковать .zip архив с произвольным названием через php

07.04.2014, 20:26. Показов 1738. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как распаковать .zip архив через php?
Загвоздка в том что нужно одни пхп файлом распаковывать архивы с разным именем.
Вот например через PclZip делается вот так
PHP
1
2
3
4
5
6
7
8
<?php
 
require_once('pclzip.lib.php');
$archive = new PclZip("archive.zip");
if ($archive->extract() == 0) {
die("Error : ".$archive->errorInfo(true));
}
?>
Но опять же каждый раз нужно будет менять имя файла.
Можно сделать так что бы этот скрипт распаковывал архив с любым именем который лежит рядом с ним в папке?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.04.2014, 20:26
Ответы с готовыми решениями:

Как скачать и распаковать zip-архив
Мне необходимо написать такой php скрипт: по некоторой ссылке надо скачать архив zip, распаковать его в опредленное место, и прочитать...

Как распаковать zip архив в подпапке
Как распаковать zip архив в подпапке директории, т.е. на уровень ниже скрипта

Как программно распаковать архив ZIP
Приветствую всех. :) Возникла необходимость программной распаковки архива zip. Подскажите в каком направлении рыть? Есть такая...

5
3 / 3 / 0
Регистрация: 20.09.2012
Сообщений: 41
02.06.2014, 22:33  [ТС]
Ни кто не знает?((
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
02.06.2014, 22:40
Цитата Сообщение от GAGAn Посмотреть сообщение
Можно сделать так что бы этот скрипт распаковывал архив с любым именем который лежит рядом с ним в папке?
Просканировать папку через scandir, проверить название файлов на наличие .zip, передать эти файлы в PclZip().
1
3 / 3 / 0
Регистрация: 20.09.2012
Сообщений: 41
02.06.2014, 22:47  [ТС]
Вот такую писанину выдает.
Кликните здесь для просмотра всего текста
Array ( [0] => %%125 [1] => %%127 [2] => %%200 [3] => %%270 [4] => %%287 [5] => %%337 [6] => %%349 [7] => %%402 [8] => %%816 [9] => . [10] => .. [11] => .a3d446033527a0b03c72a0ea74c27148 [12] => .a3d446033527a0b03c72a0ea74c27148.log [13] => .htaccess [14] => 08d3ca37 [15] => 54021f1a [16] => 5c62fc5c [17] => 8a35cf54 [18] => 9dbd2b0d [19] => agczon_cookie7l8ryC [20] => cookies.txt [21] => drupal-6.31-ru.po [22] => f5a36fd33fdbd8bd0561f71f90423483.jpg [23] => h2o_0f776f150160958eb000c59fb8a35fa9 [24] => h2o_317e66e6fbe5cd7234894823d1b6bdb4 [25] => h2o_ceeeae0ee517f68b8d39fd12d0f45ba2 [26] => install_538b8fa9054f6 [27] => install_538b9e85012a2 [28] => install_538ba0876760a [29] => install_538ba183542b1 [30] => install_538ba330bfb46 [31] => install_538ba3a8396f7 [32] => install_538ba58a37afd [33] => install_538badf105fa6 [34] => install_538baf954968e [35] => install_538bb22569df5 [36] => install_538bb36559dbe [37] => magento [38] => mc-root [39] => owncloud-oce0c8415c6a [40] => phpW8Lr0S [41] => phpgTHTCc [42] => phph7AQaU [43] => phpjrP0QU [44] => phpp9E08v [45] => sess_000137b3fee98b860c7f35923b715a2f [46] => sess_0002c7a83a6684e4c06083f79ecac8e4 [47] => sess_0006f078cf520a4e1b28328b32268326 [48] => sess_0008b38ddbd4a2a17f46f1e5918d88fd [49] => sess_000acf8082e307f09ad10ac5ab3a0e6f [50] => sess_000c5c8f2dc0791ee9637e8864daed44 [51] => sess_000d8b352ad8d60c3fb133bc59aedde1 [52] => sess_000e1ad7d5d9d0cc861ae056a2f9ce1a [53] => sess_001300ee7794b9700f49cfcdb4ac94f4 [54] => sess_0013be0a4cf235f8ee33f19854d0d09a [55] => sess_0015784703ced30735be85dcdefccc34 [56] => sess_0015bcfc95b25282318843a1c865af37 [57] => sess_0017c0a4eb7da6ceb80ddce4f0e255f9 [58] => sess_0018395d0dc39dc38b93e53550059f1c [59] => sess_0019f9bfde87887d1a5a3478f33784b2 [60] => sess_001a4d95091778b4c8c6d154149db4ad [61] => sess_001ab0bc52ed0b5927f5959fdce123df [62] => sess_001c4d1106311f01cb04f6f56966a47e [63] => sess_001d8b5802e5f91abaa818d8c45b335c [64] => sess_001e6e6b0f0f45554d677c3bf863763a [65] => sess_00221a45c53ac3bd0eb755be69f76913 [66] => sess_0022c85ad59cbf632e64d778b1cd33c6 [67] => sess_002643be0884be05a2808ccdceb2f63a [68] => sess_0029eed693080ae4922f5c7615d0bf01 [69] => sess_002aa236182e315ba7bda1aadca9955a [70] => sess_002b6bcf4d0be18f2c6403f590c83882 [71] => sess_002b6bdbe75df019a9c8b28e621aa61f [72] => sess_002c265e864bcb9a2eb103953fcdc535 [73] => sess_002c545b8073c9df22c2e6d15a115dca [74] => sess_002ca891c1a0141bff0d0d89e439c612 [75] => sess_002cc1954f4e903bace130eb73d97aa7 [76] => sess_003012ac582660397ad80636a45c5a30 [77] => sess_0030a09c718871a5fee1a088364377e4 [78] => sess_00314a9cd87d89c8281838650e8a23e0 [79] => sess_00315ff40a2ddcb90c1bb7e17e0d9f4f [80] => sess_0032d0eb26e65b7ed919b5a9e94ace8f [81] => sess_0034ed5506b5f9473e11c229fa093bed [82] => sess_00357e1f65d13ba8ecfe11f80571359c [83] => sess_0038d3e1acf7be59089e7bee633228f5 [84] => sess_003acb4fc8f570de94ace0f1949422c5 [85] => sess_003ad3e3a294f389ef99e449a1e5022c [86] => sess_003b1a429f95f1da1034bc274f18abcf [87] => sess_003e8ee0916ae2ac503c52629f60d22c [88] => sess_0040040491f38e62c0fd40a8bbc6ae65 [89] => sess_004231787ff1c7965c36428008b2f97b [90] => sess_004300da8f41db47ff0e2cbc177a6be5 [91] => sess_00437b328e098176f6e948625128d5a9 [92] => sess_0045a6188761f981eed67095a55c8c5a [93] => sess_0047d25e43a95e9955b0a040127ab25a [94] => sess_0048de6398c62a4fc49a3b3333e71a57 [95] => sess_004968be7b6bcb35f914f57a9b516db8 [96] => sess_004af516c417d12345500ed7e01f04ec [97] => sess_004c6f9571b34c864d03f6c2ff8358b5 [98] => sess_0052c50343cb8ae5ae7b401ee9d397d4 [99] => sess_0057e9d4222336d7620b2c8fbb6fb6b0 [100] => sess_005a3a7ea72ac73f49c7b93552389b3a [101] => sess_005b4ab3abc8ae4d5e0c3396a5f15649 [102] => sess_005b8f40c242538da7771fb3a599f4cb [103] => sess_005b9a1616157895d2444e393ccc0178 [104] => sess_005f9d00ebc74d56304e1ddee1392906 [105] => sess_005fcdf00b2dcae4cc92ff1ec8238be1 [106] => sess_006136a391d77716215d9bdeed30cb9c [107] => sess_0061fdd816018b7ad47d3ec0ec0fdfa1 [108] => sess_006246b81c4d77d31d3f6a19017dcb62 [109] => sess_006365f6892fa02c74b85c8812591eed [110] =>

PHP
1
2
3
4
5
6
7
8
<?php
$dir    = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);
 
print_r($files1);
print_r($files2);
?>
Хотя в папке только 6 файлов.
1
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
02.06.2014, 22:55
Цитата Сообщение от GAGAn Посмотреть сообщение
Хотя в папке только 6 файлов.
Вы уверены что путь указан верно? /tmp это папка tmp в корне системы ( "/" ) для unix систем. Либо папка диска на котором находится скрипт для Windows. Например если скрипт находится где нибудь в "E:\web\htdocs\index.php", то для него "/" будет все равно что "E:\".

Если файлы находятся в папке tmp, которая находится на одном уровне с файлом скрипта пишите так: "./tmp".
1
3 / 3 / 5
Регистрация: 09.02.2014
Сообщений: 43
03.06.2014, 10:41
И мне помогло, спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.06.2014, 10:41
Помогаю со студенческими работами здесь

Как распаковать архив (rar; zip; 7z)?
как программно распаковать архив? путь куда распаковывать архив находиться в текстовом поле. если в в папке, в которую будет распакован...

Как распаковать ZIP архив и поместить содержимое в List<>
Есть ZIP архив с множеством файлов (текстовых(txt,html,htm,cs,cpp), и картинок(png,jpeg)) Как его распаковать и поместить содержимое в...

Как с использованием 7-Zip запаковать файлы и каталоги в архив и распаковать их из архива?
Научите меня 7z паковать! Документация выводится в консоль, но всё же пробами и ошибками долго изучать. Меня интересует как можно...

Распаковать zip архив
Нужно распаковать все файлы из zip архива (или tar.gz). Подключил zlib. zip архив находится рядом с .exe файлом приложения. Не могу...

Распаковать архив zip
Задачка такова: извлечь из архива содержимое указаной пользователем папки расположенную в корне архива в указазаную пользователем папку. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru