ZIP a folder with PHP preserving file properties2019 Community Moderator ElectionPHP - Download file and preserve timestamp?How can I prevent SQL injection in PHP?PHP: Delete an element from an arrayConvert HTML + CSS to PDF with PHP?startsWith() and endsWith() functions in PHPHow do I get PHP errors to display?How Do You Parse and Process HTML/XML in PHP?Reference — What does this symbol mean in PHP?How does PHP 'foreach' actually work?Why shouldn't I use mysql_* functions in PHP?PHP native class ZipArchive can't unzip Huge File with PHP7.0,libzip 1.1.2, zip 1.15.1

Decoding assembly instructions in a Game Boy disassembler

Word for a person who has no opinion about whether god exists

Best mythical creature to use as livestock?

Am I not good enough for you?

Can "semicircle" be used to refer to a part-circle that is not a exact half-circle?

How do anti-virus programs start at Windows boot?

Why does Deadpool say "You're welcome, Canada," after shooting Ryan Reynolds in the end credits?

Co-worker team leader wants to inject the crap software product of his friends into our development. What should I say to our common boss?

Time dilation for a moving electronic clock

Question about partial fractions with irreducible quadratic factors

Touchscreen-controlled dentist office snowman collector game

Can the druid cantrip Thorn Whip really defeat a water weird this easily?

Identifying the interval from A♭ to D♯

Does Linux have system calls to access all the features of the file systems it supports?

What exactly is the purpose of connection links straped between the rocket and the launch pad

My adviser wants to be the first author

Latest web browser compatible with Windows 98

Confusion with the nameplate of an induction motor

As a monk, can you make a melee attack roll using your Strength modifier, but roll damage with your Dexterity modifier?

Welcoming 2019 Pi day: How to draw the letter π?

What is the likely impact on flights of grounding an entire aircraft series?

How could a female member of a species produce eggs unto death?

Counter-example to the existence of left Bousfield localization of combinatorial model category

Provisioning profile doesn't include the application-identifier and keychain-access-groups entitlements



ZIP a folder with PHP preserving file properties



2019 Community Moderator ElectionPHP - Download file and preserve timestamp?How can I prevent SQL injection in PHP?PHP: Delete an element from an arrayConvert HTML + CSS to PDF with PHP?startsWith() and endsWith() functions in PHPHow do I get PHP errors to display?How Do You Parse and Process HTML/XML in PHP?Reference — What does this symbol mean in PHP?How does PHP 'foreach' actually work?Why shouldn't I use mysql_* functions in PHP?PHP native class ZipArchive can't unzip Huge File with PHP7.0,libzip 1.1.2, zip 1.15.1










2















I use PHP ZIPArchive to create zip file from folder and user doesn't want to change the original file created date when download. my code is below and is there any option that helps to keep the file created date?



 function zipData($source, $destination, $fname) 
if (extension_loaded('zip'))
if (file_exists($source))
$zip = new ZipArchive();
if ($zip->open($destination, ZIPARCHIVE::CREATE))
$source = realpath($source);
if (is_dir($source))
$iterator = new RecursiveDirectoryIterator($source);
$iterator->setFlags(RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::SELF_FIRST);
foreach ($files as $file)
$file = realpath($file);
if (is_dir($file))
$zip->addEmptyDir(str_replace($source . '/', '', $fname . '/' . $file . '/'));
else if (is_file($file))
$zip->addFromString(str_replace($source . '/', '', $fname . '/'. $file), file_get_contents($file));


else if (is_file($source))
$zip->addFromString(basename($source), file_get_contents($source));


return $zip->close();


return false;










share|improve this question






















  • This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

    – Marvin Klar
    Mar 7 at 13:10











  • This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

    – Thameera
    Mar 8 at 1:51











  • Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

    – Marvin Klar
    Mar 8 at 8:01












  • Great to hear that! I just created a concluding answer. Feel free to accept it.

    – Marvin Klar
    yesterday















2















I use PHP ZIPArchive to create zip file from folder and user doesn't want to change the original file created date when download. my code is below and is there any option that helps to keep the file created date?



 function zipData($source, $destination, $fname) 
if (extension_loaded('zip'))
if (file_exists($source))
$zip = new ZipArchive();
if ($zip->open($destination, ZIPARCHIVE::CREATE))
$source = realpath($source);
if (is_dir($source))
$iterator = new RecursiveDirectoryIterator($source);
$iterator->setFlags(RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::SELF_FIRST);
foreach ($files as $file)
$file = realpath($file);
if (is_dir($file))
$zip->addEmptyDir(str_replace($source . '/', '', $fname . '/' . $file . '/'));
else if (is_file($file))
$zip->addFromString(str_replace($source . '/', '', $fname . '/'. $file), file_get_contents($file));


else if (is_file($source))
$zip->addFromString(basename($source), file_get_contents($source));


return $zip->close();


return false;










share|improve this question






















  • This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

    – Marvin Klar
    Mar 7 at 13:10











  • This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

    – Thameera
    Mar 8 at 1:51











  • Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

    – Marvin Klar
    Mar 8 at 8:01












  • Great to hear that! I just created a concluding answer. Feel free to accept it.

    – Marvin Klar
    yesterday













2












2








2








I use PHP ZIPArchive to create zip file from folder and user doesn't want to change the original file created date when download. my code is below and is there any option that helps to keep the file created date?



 function zipData($source, $destination, $fname) 
if (extension_loaded('zip'))
if (file_exists($source))
$zip = new ZipArchive();
if ($zip->open($destination, ZIPARCHIVE::CREATE))
$source = realpath($source);
if (is_dir($source))
$iterator = new RecursiveDirectoryIterator($source);
$iterator->setFlags(RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::SELF_FIRST);
foreach ($files as $file)
$file = realpath($file);
if (is_dir($file))
$zip->addEmptyDir(str_replace($source . '/', '', $fname . '/' . $file . '/'));
else if (is_file($file))
$zip->addFromString(str_replace($source . '/', '', $fname . '/'. $file), file_get_contents($file));


else if (is_file($source))
$zip->addFromString(basename($source), file_get_contents($source));


return $zip->close();


return false;










share|improve this question














I use PHP ZIPArchive to create zip file from folder and user doesn't want to change the original file created date when download. my code is below and is there any option that helps to keep the file created date?



 function zipData($source, $destination, $fname) 
if (extension_loaded('zip'))
if (file_exists($source))
$zip = new ZipArchive();
if ($zip->open($destination, ZIPARCHIVE::CREATE))
$source = realpath($source);
if (is_dir($source))
$iterator = new RecursiveDirectoryIterator($source);
$iterator->setFlags(RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::SELF_FIRST);
foreach ($files as $file)
$file = realpath($file);
if (is_dir($file))
$zip->addEmptyDir(str_replace($source . '/', '', $fname . '/' . $file . '/'));
else if (is_file($file))
$zip->addFromString(str_replace($source . '/', '', $fname . '/'. $file), file_get_contents($file));


else if (is_file($source))
$zip->addFromString(basename($source), file_get_contents($source));


return $zip->close();


return false;







php ziparchive






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 7 at 10:36









ThameeraThameera

134




134












  • This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

    – Marvin Klar
    Mar 7 at 13:10











  • This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

    – Thameera
    Mar 8 at 1:51











  • Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

    – Marvin Klar
    Mar 8 at 8:01












  • Great to hear that! I just created a concluding answer. Feel free to accept it.

    – Marvin Klar
    yesterday

















  • This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

    – Marvin Klar
    Mar 7 at 13:10











  • This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

    – Thameera
    Mar 8 at 1:51











  • Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

    – Marvin Klar
    Mar 8 at 8:01












  • Great to hear that! I just created a concluding answer. Feel free to accept it.

    – Marvin Klar
    yesterday
















This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

– Marvin Klar
Mar 7 at 13:10





This has been already discussed here: stackoverflow.com/questions/35083308/… Are you looking for this?

– Marvin Klar
Mar 7 at 13:10













This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

– Thameera
Mar 8 at 1:51





This is not the one I'm looking for. My issue is when zip file create all the files inside the zip file will change to time they request the zip file. I want to keep the original time stamp of the file inside the zip file.

– Thameera
Mar 8 at 1:51













Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

– Marvin Klar
Mar 8 at 8:01






Since I currently don't have the possiblity to test it, I have to ask, if you already have tried using $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.

– Marvin Klar
Mar 8 at 8:01














Great to hear that! I just created a concluding answer. Feel free to accept it.

– Marvin Klar
yesterday





Great to hear that! I just created a concluding answer. Feel free to accept it.

– Marvin Klar
yesterday












1 Answer
1






active

oldest

votes


















0














As described in the comments, we have to use $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.






share|improve this answer






















    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55041689%2fzip-a-folder-with-php-preserving-file-properties%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    As described in the comments, we have to use $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.






    share|improve this answer



























      0














      As described in the comments, we have to use $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.






      share|improve this answer

























        0












        0








        0







        As described in the comments, we have to use $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.






        share|improve this answer













        As described in the comments, we have to use $zip->addFile("yourfilename") instead of $zip->addFromString(). Because this will Add[...] a file to a ZIP archive from the given path and don't create a new file by Add[ing] a file to a ZIP archive using its contents.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered yesterday









        Marvin KlarMarvin Klar

        18417




        18417





























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid …


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55041689%2fzip-a-folder-with-php-preserving-file-properties%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Thal And Out Agency railway station See also References External links Navigation menuOfficial Web Site of Pakistan RailwaysArchivedOfficial Web Site of Pakistan Railwayseeexpanding ite

            Posting a File and Associated Data to a RESTful WebService preferably as JSON2019 Community Moderator ElectionREST URI convention - Singular or plural name of resource while creating itUploading both data and files in one form using Ajax?How do I upload a file with metadata using a REST web service?REST API - file (ie images) processing - best practicesSpring: JSON data and file in the same requestREST API Put large dataPosting a file and JSON data to Spring rest serviceRESTful Web Service Upload/Download Large Data With JSONREST API Design sending JSON data and a file to the api in same requestPost JSONArray to REST servicePUT vs. POST in RESTParsing values from a JSON file?JavaScript/jQuery to download file via POST with JSON dataHow do I upload a file with metadata using a REST web service?How to POST JSON data with Curl from Terminal/Commandline to Test Spring REST?Separate REST JSON API server and client?what's the correct way to send a file from REST web service to client?How do I write JSON data to a file?What is “406-Not Acceptable Response” in HTTP?REST API - file (ie images) processing - best practices

            How can I change the color of pagination dots of UIPageControl?How to change UIPageControl dotsIs there a way to change page indicator dots colorCustomize dot with image of UIPageControl at index 0 of UIPageControlNo visible @interface for 'NSObject<PageControlDelegate>' declares the selector 'pageControlPageDidChange:'How to change the color of pagination dots in UIPageControl with a different color per pagepagecontrol indicator custom image instead of DefaultChanging the colour of UIPageControl dots in MonoTouchpagecontrol selectable page visibility color?Alternative way to load ViewControllers on a UIPageControlHow to set only layer.border-color for UIpage control dots in swiftHow can I develop for iPhone using a Windows development machine?How to change the name of an iOS app?UITableView - change section header coloruipagecontrol indicator(dot)issueCustom UIPageControl dots color not changingchange the interspace between UIPageControl dotsHow to change Status Bar text color in iOSHow can I change image tintColor in iOS and WatchKitUIPageControl dots with larger space in between each dotsHow to change the color of pagination dots in UIPageControl with a different color per page