首页 > 编程知识 正文

php批量导入多个excel,php批量添加数据

时间:2024-03-07 18:23:22 阅读:331799 作者:YPOG

本文目录一览:

如何批量导入多个excel文件

第一步,将txt文档合并为一个大的txt文档。

打开记事本,输入for %%i in (*.txt) do type %%i0.txt(可将该命令复制粘贴过去)

然后将文件保存到500多个txt文件所在的文件夹,文件的后缀名为.bat文件。比如保存为all.bat

在文件夹中双击运行all.bat批处理文件,将文件夹中所有txt文档合并为一个名字叫0.txt的文档。

第二步,打开excel文档,新建一个工作表,然后打开0.txt,将内容全部复制粘贴到这个新工作表的A列。

第三步,在这个新工作表的B列、C列、D列等列设置公式

根据txt文件内容的特殊字符,自动从txt中截取所需内容。

PHP Excel大批量导入崩溃怎么办?

项目需要批量导入excel文件,如果里面有重复的数据要怎么处理呢?每插入一次数据都要到数据库查询么?

回复内容:

项目需要批量导入excel文件,如果里面有重复的数据要怎么处理呢?每插入一次数据都要到数据库查询么?

1、如果里面有重复的数据要怎么处理呢?

1

code可以先判断数据库是否有该数据。/code

2、每插入一次数据都要到数据库查询么

1

code是的。/code

先去重得到没有重复的数据,再批量插入数据库。也可以尝试MYSQL中的insert ignore into或 replace into

如果查询比较慢,对不能重复的字段加唯一键,然后用INSERT IGNORE INTO

php批量导入数据出错

我现在要做的是,把一个产品数据从EXCEL中导入到PHP的MYSQL中,导入的过程中,总是会提示“Allowed memory size of 167772160 bytes exhausted (tried to allocate 689919 bytes) in D:wampwwwCompanyproductadminuploadOrder.php on line 167”这个错误,然后我分成第100条导入时,就不会提示这个错误,这个是不是内存溢出,有没有好的解决方法呢?

------解决方案--------------------

php.ini中讲memory_limit选项设置大一点,然后重启apache或nginx就行了

------解决方案--------------------

文件太大了,这样的话可以用source命令直接导入!

------解决方案--------------------

php读取excel,excel下多个个工作表,该怎么读取

php读取excel,excel下多个个工作表的方法:

1、利用PHPExcelReader来完成多个excel的读取。

2、PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文件的读取。

3、下载PHPExcel后保存到自己的类文件目录中,然后使用以下代码可以打开Excel 2007(xlsx)格式的文件:

require_once '/libs/PHPExcel-1.8.0/Classes/PHPExcel.php'; //修改为自己的目录

echo 'pTEST PHPExcel 1.8.0: read xlsx file/p';

$objReader = PHPExcel_IOFactory::createReaderForFile($filename);

$objPHPExcel = $objReader-load($filename);

$objPHPExcel-setActiveSheetIndex(1);

$date = $objPHPExcel-getActiveSheet()-getCell('A16')-getValue();

输出$date变量就能够看到文件中的内容了。

用PHPExcel 怎么批量导入excel??求方法

用PHPExcel,PHPExcel是相当强大的 MS Office Excel 文档生成类库。

你上它的官/网把程序包下/载下来,里面有 PHPExcel 的程序、还有30个实例程序和三个文档。

看一下其中的开发文档你就会用了。

读取(这段在开发文档里有的,在13页):

require_once '../Classes/PHPExcel/IOFactory.php';

$objReader = PHPExcel_IOFactory::createReader('Excel2007');

$objReader-setReadDataOnly(true);

$objPHPExcel = $objReader-load("test.xlsx");

$objWorksheet = $objPHPExcel-getActiveSheet();

echo 'table' . "n";

foreach ($objWorksheet-getRowIterator() as $row) {

echo 'tr' . "n";

$cellIterator = $row-getCellIterator();

$cellIterator-setIterateOnlyExistingCells(false);

foreach ($cellIterator as $cell) {

echo 'td' . $cell-getValue() . '/td' . "n";

}

echo '/tr' . "n";

}

echo '/table' . "n";

?

php怎么导出大量数据的Excel

php导出大量数据到Excel,可以通过生成多个Excel文件,然后压缩成压缩包解决。

方案是:假如我们数据库有10w条数据,每2000条数据生成一个Excel文件,这样每次只要从数据库里查询出2000条数据即可,一定要分页去查询。

原因:主要是数据库性能和写文件性能。分页查询可以解决数据库压力的问题, 生成多个文件可以解决单个文件太大,后期维护Excel文件的问题。

要注意的:

1. 在导出逻辑文件开头,一定要声明 set_time_limit(0) ,防止脚本超时;

2. 每个文件生成后,适当的sleep一下,让程序休息一下下;

3. 因为一次导出最后要将生成的多个Excel文件打包成一个压缩包,所以要删除掉生成的Excel文件,节省服务器存储空间;

下面是我实际工作中,写的一个php导出大量数据到Excel的代码,你可以参考一下:

php如何批量导入excel表格文件

$data = new Spreadsheet_Excel_Reader();//实例化    

02                $data-setOutputEncoding('utf-8');//设置读取编码    

03                $data-read($p);//$p就是excel文件路径    

04                     

05                for ($i = 2; $i = $data-sheets[0]['numRows']; $i++) {    

06                    //传如数组,将一行信息写入数据库;    

07                    $arr = $data-sheets[0]['cells'][$i];    

08                    if($arr){    

09                        $r = addUserLine($arr,$posts['bid']);    

10                        if($r){    

11                        echo "楼栋:".$r['bldgname']." 房间:".$r['roomname']." 学员:".$r['name']." 学号:".$r['sid']." 导入成功br /hr /";    

12                        }else{    

13                            echo "br /hr /";    

14                        }    

15                    }    

16                }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。