|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-03-20 20:10 UTC] pajoye@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Tue Oct 28 04:00:01 2025 UTC |
Description: ------------ If a zip file contains more than 8xx files, ZipArchive::open returns ZIPARCHIVE::ER_READ. It's working under 32bit, but failling under 64bit systems (I tried two amd 64 systems). 5.2.1 and php5.2-200703201930 doesn't work. Is this really a php issue? Reproduce code: --------------- #!/bin/sh rm -rf test1 test2 test1.zip test2.zip mkdir test1 test2 cd test1 php -r 'for ($i = 1; $i < 800; $i++) system("touch test$i.txt");' cd ../ zip -r test1.zip test1 > /dev/null php -r '$zip = new ZipArchive(); var_dump($zip->open("test1.zip")); var_dump($zip->numFiles);' cd test2 php -r 'for ($i = 1; $i < 876; $i++) system("touch test$i.txt");' cd ../ zip -r test2.zip test2 > /dev/null php -r '$zip = new ZipArchive(); var_dump($zip->open("test2.zip")); var_dump($zip->numFiles);' Expected result: ---------------- [mas@sw-nbk01 zip]$ sh ./zip.sh bool(true) int(800) bool(true) int(876) Actual result: -------------- [mas@www zip]$ sh ./zip.sh bool(true) int(800) int(5) int(0)