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
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
add a comment |
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
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 willAdd[...] a file to a ZIP archive from the given path
and don't create a new file byAdd[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
add a comment |
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
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
php ziparchive
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 willAdd[...] a file to a ZIP archive from the given path
and don't create a new file byAdd[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
add a comment |
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 willAdd[...] a file to a ZIP archive from the given path
and don't create a new file byAdd[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
add a comment |
1 Answer
1
active
oldest
votes
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
.
add a comment |
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
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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
.
add a comment |
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
.
add a comment |
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
.
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
.
answered yesterday
Marvin KlarMarvin Klar
18417
18417
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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 willAdd[...] a file to a ZIP archive from the given path
and don't create a new file byAdd[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