php zip extract subfolder

C++ JAVA
Post Reply
User avatar
vasilev
Потребител
Потребител
Posts: 663
Joined: Sat Feb 07, 2009 12:41 pm
Answers: 25
Location: Everywhere
Contact:

php zip extract subfolder

Post by vasilev » Tue Feb 25, 2020 8:06 am

здравейте,
опитвам се да разархивирам zip file - backup/web/* - в дадена папка.
архива го взимам от github и там структурата е друга.
със zip->extractTo прави същата структура.
възможно ли е да разархивирам само това което е в web без да прави структура backup/web .

мерси !
by vasilev » Tue Feb 25, 2020 9:56 am
това и направих.. но със php, защото приложението не е ясно на каква платформа ще работи :)

Code: Select all

function recurse_copy($src,$dst) { 
        $dir = opendir($src); 
        @mkdir($dst); 
        while(false !== ( $file = readdir($dir)) ) { 
            if (( $file != '.' ) && ( $file != '..' )) { 
                if ( is_dir($src . '/' . $file) ) { 
                    recurse_copy($src . '/' . $file,$dst . '/' . $file); 
                } 
                else { 
                    copy($src . '/' . $file,$dst . '/' . $file); 
                } 
            } 
        } 
        closedir($dir); 
    } 
	
	
	 function rrmdir($dir) {
        if (is_dir($dir)) {
            $files = scandir($dir);
            foreach ($files as $file)
                if ($file != "." && $file != "..") rrmdir("$dir/$file");
            rmdir($dir);
        }
        else if (file_exists($dir)) unlink($dir);
    }
Go to full post

User avatar
Ticketa
Турист
Турист
Posts: 599
Joined: Mon Feb 27, 2012 1:54 pm
Answers: 24
Location: in /root
Contact:

Re: php zip extract subfolder

Post by Ticketa » Tue Feb 25, 2020 9:05 am

Ползвай unzip

User avatar
vasilev
Потребител
Потребител
Posts: 663
Joined: Sat Feb 07, 2009 12:41 pm
Answers: 25
Location: Everywhere
Contact:

Re: php zip extract subfolder

Post by vasilev » Tue Feb 25, 2020 9:42 am


Fakeheal
Гуру
Гуру
Posts: 2718
Joined: Sat Apr 17, 2010 6:37 am
Answers: 351
Location: /r/eyebleach
Contact:

Re: php zip extract subfolder

Post by Fakeheal » Tue Feb 25, 2020 9:54 am

А защо просто не ги преместиш и изтриеш после?

Code: Select all

unzip file.zip && mv ./backup/web/* ./ && rm -rf ./backup

User avatar
vasilev
Потребител
Потребител
Posts: 663
Joined: Sat Feb 07, 2009 12:41 pm
Answers: 25
Location: Everywhere
Contact:

Re: php zip extract subfolder

Post by vasilev » Tue Feb 25, 2020 9:56 am

това и направих.. но със php, защото приложението не е ясно на каква платформа ще работи :)

Code: Select all

function recurse_copy($src,$dst) { 
        $dir = opendir($src); 
        @mkdir($dst); 
        while(false !== ( $file = readdir($dir)) ) { 
            if (( $file != '.' ) && ( $file != '..' )) { 
                if ( is_dir($src . '/' . $file) ) { 
                    recurse_copy($src . '/' . $file,$dst . '/' . $file); 
                } 
                else { 
                    copy($src . '/' . $file,$dst . '/' . $file); 
                } 
            } 
        } 
        closedir($dir); 
    } 
	
	
	 function rrmdir($dir) {
        if (is_dir($dir)) {
            $files = scandir($dir);
            foreach ($files as $file)
                if ($file != "." && $file != "..") rrmdir("$dir/$file");
            rmdir($dir);
        }
        else if (file_exists($dir)) unlink($dir);
    }

Fakeheal
Гуру
Гуру
Posts: 2718
Joined: Sat Apr 17, 2010 6:37 am
Answers: 351
Location: /r/eyebleach
Contact:

Re: php zip extract subfolder

Post by Fakeheal » Tue Feb 25, 2020 10:31 am

vasilev wrote:
Tue Feb 25, 2020 9:56 am
това и направих.. но със php, защото приложението не е ясно на каква платформа ще работи :)
Ако платформата няма php интерпретатор? :D

Може да ползваш DIRECTORY_SEPARATOR константата и да погледнеш малко правата на файловте/папките при копиране?

User avatar
vasilev
Потребител
Потребител
Posts: 663
Joined: Sat Feb 07, 2009 12:41 pm
Answers: 25
Location: Everywhere
Contact:

Re: php zip extract subfolder

Post by vasilev » Tue Feb 25, 2020 1:58 pm

аз го правя за мое приложение работещо на php :)
тествах го на apache на windows, по късно ще го тествам и на хостинг. за момента е ок.
но мерси , добавих и за правата.

Post Reply