欢迎您光临深圳市百域网络科技有限公司!
电话图标 咨询热线:13724519901 免费注册
光明新区

光明新区

这里象征着我们的态度和能力

网站制作之PhpExcl数据批量导入导出

发表日期:2019-07-03 文章编辑:百域网络 浏览次数:184

1、所用的框架是Thinktp 框架
2、所用插件PHPExcel
将我们的下载的PHPExcel 放入ThinkPHP\Library\Vendor 中 具体位置看自身实际情况
导入读取excl表格 vendor('PHPExcel.PHPExcelUser'); //引用文件
$excel=new \PHPExcelUser($file); //打开$fileexcl文件;
$data=$excel->excelImport(0); // 0代表从第一行开始
导入后通过循环对数据进行处理和保存;
导出数据 $excel=new \PHPExcelUser($FileName); //这里的$FileName是文件的导出名称;
$excel->excelExport($data,$title); //这里$data为数据,$title 为表格的标题;

导入导出比较简单,这里整理了一些遇到的问题:
导入时间问题 在导入表格中的时间格式需要转换一下,转换函数如下:

function excelTime($date, $time = false) {
if(function_exists('GregorianToJD')){
if (is_numeric( $date )) {
$jd = GregorianToJD( 1, 1, 1970 );
$gregorian = JDToGregorian( $jd + intval ( $date ) - 25569 );
$date = explode( '/', $gregorian );
$date_str = str_pad( $date [2], 4, '0', STR_PAD_LEFT )
."-". str_pad( $date [0], 2, '0', STR_PAD_LEFT )
."-". str_pad( $date [1], 2, '0', STR_PAD_LEFT )
. ($time ? " 00:00:00" : '');
return $date_str;
}
}else{
$date=$date>25568?$date+1:25569;
/*There was a bug if Converting date

before 1-1-1970 (tstamp 0)*/
$ofs=(70 * 365 + 17+2) * 86400;
$date = date("Y-m-d",($date * 86400) - $ofs).($time ? " 00:00:00" : '');
}
return $date;
}
这样就能到就是一个标准的时间格式,不然就是一个数字(非时间戳);

长数字字符串在表格中被转换成了科学计数法的数字最简单的方法在字符串前面加个空格或者用
$objActSheet->setCellValueExplicit('A1','330602198804224688', PHPExcel_Cell_DataType::TYPE_STRING);
将a1列的定义为字符串

Unknown codepage: 10008 PHPExcel_Shared_CodePage::NumberToName(%d) PHPExcel/Shared/CodePage.php 98 break()原因是 NumberToName() 方法中没有 10008 对应的情况处理,所以会抛出“Unknown codepage: 10008”异常。


找到PHPExcel/Shared/CodePage.php 文件添加
case 10008: return 'MAC'; break; //在mac苹果系统下面会出现这个问题


四、下载出来乱码情况一般是缓冲问题
ob_end_clean(); //清除缓冲区,避免乱码

vendor('PHPExcel.PHPExcelUser');
$file=.'/cs.xlsx';//这是路径
$excel=new \PHPExcelUser($file);
$data=$excel->excelImport(1);
//excel表导出
ob_end_clean();//清除缓冲区,避免乱码
header("Content-type: text/html; charset=utf-8");
vendor('PHPExcel.PHPExcelUser');
$file='cs.xlsx';
$excel=new \PHPExcelUser($file);
$data=array();//数据二维数组
$title=array();//数据标题一维数组
$excel->excelExport($data,$title);

网站制作之PhpExcl数据批量导入导出由百域网络编辑 http://www.baiyu88.com/guangming/468.html 如需转载请注明出处

相关新闻
最新新闻
随机新闻
最新网站设计案例
  • 我们能做什么

    东莞百域网络网络科技有限公司提供东莞光明新区企业网站、购物商城、行业门户网站、手机网站等各类网站应用的设计与开发,十年时间坚持量身定制,为客户打造新颖精美,紧密结合客户需求的网站,也更加注重性价比,以求把更多的实惠带给千千万万的客户。我们制作的网站均由工作多年的设计师一对一量身设计,力求每一款设计都独具匠心。

  • 我们的优势

  • 更多 +关于我们

    我们是一家专注光明新区网站建设、光明新区网站设计、光明新区网站优化、东莞光明新区网站优化、光明新区网站建设、光明新区网站推广、光明新区网站设计、光明新区网站制作、光明新区网页设计、光明新区网页制作、光明新区网络公司;我们凭借在网站建设领域专业的技术和多年的行业经验,先后为众多企业提供了优质的建站服务,获得行业的高度认可。

Copyright版权所有@2019深圳市百域网络科技有限公司

快捷导航
网站建设

咨询电话

13724519901
×