首页 > 后端开发 > php教程 > 用phpExcelReader不能导入大量数据解决办法

用phpExcelReader不能导入大量数据解决办法

WBOY
发布: 2016-06-13 12:07:40
原创
1257 人浏览过

用phpExcelReader不能导入大量数据
我在网上找了个例子,可以通过phpexcel将excel文件导入到数据库中,但是数据一旦超过122条,例如一个excel文件中有123条数据就无法导入。我讲代码贴出来,大家看看:
require_once '../phpExcelReader/Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('GB2312');
$data->read('../lfx.xls');
}

for ($i = 1; $i sheets[0]['numRows']; $i++) 
  {

for ($j = 1; $j sheets[0]['numCols']; $j++) 
{

echo $data->sheets[0]['cells'][$i][$j];
}
}

以上代码在excel文件小于123条时就可以打印出所有记录在网页上,但是大于等于123条时就是空白,而我需要导入一个5000条以上的数据,苦恼中。


附上phpExcelReader以及我的excel
感谢各位了!
------解决思路----------------------

/*<br /> * PHPExcel.V1.7.6版本 [读取示例]<br /> */<br />include 'PHPExcel/IOFactory.php';<br />$filename = "d:/test.xls";<br />$readType = PHPExcel_IOFactory::identify($filename);  //在不知道文档类型的情况下获取<br />$excelReader = PHPExcel_IOFactory::createReader($readType);<br />$PHPExcelObj = $excelReader->load($filename);<br />$currentSheet = $PHPExcelObj->getSheet(0);            //选取第一张表单(Sheet1)为当前操作的表单<br />$excelRows = $currentSheet->getHighestRow();          //获取最大行<br />$excelColumn = $currentSheet->getHighestColumn();     //获取最大列<br />foreach(range(1,$excelRows) as $row){<br />    $line = '<p>';<br />    foreach(range('A',$excelColumn) as $column){<br />        $line .= $currentSheet->getCell($column.$row)->getValue().",";<br />    }<br />    $line .= '</p>';<br />    echo $line;<br />}
登录后复制



------解决思路----------------------

引用:
我在网上找了个例子,可以通过phpexcel将excel文件导入到数据库中,但是数据一旦超过122条,例如一个excel文件中有123条数据就无法导入。我讲代码贴出来,大家看看:
require_once '../phpExcelReader/Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutput……


用这个吧:http://www.phpclasses.org/package/6235-PHP-Parse-and-access-binary-Excel-files-in-pure-PHP.html

用过后觉得很不错,支持中文,支持xlsx格式,可以遍历解析所有的表、列、行、以及单元格。之前也是用的phpExcelReader,发现问题比较多,于是找到这个。
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板