PHP + Ajax处理大数据查询并导出Excel

思路:使用ajax多次请求服务器,分段生成多个Excel,然后打包压缩成zip,超链接指向下载的文件然后下载。

【JS部分】

function export(){
        if(!confirm('导出时间较长,请耐心等待,导出成功前请勿刷新页面!是否继续?')){
            return false;
        }
       
        ajaxGetExportData(1);

        alert('导出成功');

    }
    function ajaxGetExportData(page){
        var res = 0;
        $.ajax({
            type: "GET",
            async: false,
            url: "/export.php?page="+page,
            success:function(data){
                res = data;
            }
        });

        if(res == 1){
            page++;
            ajaxGetExportData(page);
        }
        return true;
    }

【PHP部分】

$page     = $_GET['page'];

if($page <= 3){
    $file_path = 'uploads/excel';
    if (!file_exists($file_path)) {
        @mkdir($file_path,0777,true);
    }
    $file_name = $file_path . '/' . $page . '.txt';
    file_put_contents($file_name,'123');

    echo 1;
}else{
    echo 0;
}

最后一步:生成zip文件,参考:https://www.cnblogs.com/kccdzz/p/10273674.html

猜你喜欢

转载自www.cnblogs.com/kccdzz/p/10273707.html