0
function zip()
{



    $zip = new ZipArchive;



    $res = $zip->open($_FILES['file']['tmp_name']);
    if ($res) {




        for( $i = 0; $i <= 2; $i++ ){ 
            $stat = $zip->statIndex( $i ); 

                $legitImage=explode('.',$stat['name']);
                print_r($legitImage);
                echo $legitImage[1];
                echo $legitImage[0];
                if($legitImage[1]=='png' && $legitImage[0] == 'Isometric_'.$i)
                {
                    echo "It's an image";
                    //do your operations

                }


            }

        echo 'Not Valid Form,'.$zip->numFiles;



    }
    $zip->close();

}

你好,

在上面的代码中,我尝试了两个压缩文件,一个是 9.3 mB 数据,一个是 1.20 mb。然而,对于 1.20mb 的文件,代码按预期的方式运行,但对于较大的文件,它会显示错误,因为找不到文件。我们正在使用我们的主机作为服务,所以我无法从哪里获得我的帖子最大大小,这就是它收到错误的原因。而且我猜 set_time_limit 是原因。因为要上传超过 9 mb 的文件,可能需要超过大小限制的时间。

谁能猜出我哪里出错了。任何帮助都深表感谢。

4

2 回答 2

0

将文件分块使用FileReader和切片,一一上传(使用 AJAX),然后在服务器上重新组装文件。

谷歌实现/示例。

于 2013-10-15T13:57:37.123 回答
0

由于大小,它可能无法访问服务器

http://www.php.net/manual/en/features.file-upload.common-pitfalls.php

MAX_FILE_SIZE 项不能指定大于 php.ini 文件的 upload_max_filesize 中设置的文件大小。默认值为 2 兆字节。

如果启用了内存限制,则可能需要更大的 memory_limit。确保将 memory_limit 设置得足够大。

如果 max_execution_time 设置得太小,脚本执行可能会超出该值。确保将 max_execution_time 设置得足够大
于 2013-10-15T13:58:47.517 回答