tp editor导入excel,
引第三方的常用方法汇总类库放到ThinkPHP 库供应商演示下,自己建的文件夹演示
再将Excel.class放到ThinkPHPLibraryOrgclass下,自己建的文件夹班级
控制器:
?服务器端编程语言(专业超文本预处理器的缩写)
命名空间管理员控制者
使用思考控制器;
类别例外控制器扩展控制器{
公共函数excelList(){
$ this-display();
//导入
公共函数导入(){
如果(!空($ _ FILES[ file _ stu ][ name ]){
$ tmp _ file=$ _ FILES[ file _ stu ][ tmp _ name ];//临时文件名
$file_types=explode( . ,$ _ FILES[ file _ stu ][ name ]);//拆分文件名
$ file _ type=$ file _ types[count($ file _ types)-1];//文件类型
/*判断是否为超过文件*/
if($ file _ type== xls $ file _ type== xlsx $ file _ type== CSV ){//符合类型
/*上传业务*/
$ Upload=new Think Upload();
$ upload-maxSize=3145728;
$upload- exts=array(xls , csv , xlsx );
$upload- rootPath= ./Public ;
$ upload-save path=/Excel/;
$ upload-saveName=date( ymd his );
$ info=$ upload-upload();
如果(!$info) { //上传错误提示错误信息
$ this-error($ upload-getError());
}else{ //上传成功
//读取文件
$filename= ./Public .$info[file_stu][savepath].$ info[ file _ stu ][ savename ];
导入(组织。于凡。excel reader’);
供应商( PHPExcel .PHPExcel’);
$ reader= PHP excel _ io factory:create reader( excel 2007 );//设置以Excel5格式(摘录97-2003工作簿)
$ PHPExcel=$ reader-load($ filename);//载入超过文件
$ sheet=$ PHPExcel-get sheet(0);//读取第一個工作表
$ highester row=$ sheet-gethighester row();//取得总行数
var _ dump($最高行);
$ highestcolumn=$ sheet-getHighestColumn();//取得总列数
/** 循环读取每个单元格的数据*/
$ data=array();
for($ row=2;$ row=$ highestRow$row ){//行数是以第一行开始
if($column=A){
$ data[ name ]=$ sheet-get cell($ column .$ row)-getValue();
if($column=B){
$ data[ account ]=$ sheet-get cell(column .$ row)-getValue();
if($column=C){
$ data[ password ]=$ sheet-get cell($ column .$ row)-getValue();
m( data )-add($ data);
$this- success(导入数据库成功,U( Excel/show );
} else{ //不符合类型业务
$this- error(不是超过文件,请重新上传.);
}否则{
$ this-error((o)~没传数据就导入);
//导出
公共函数导出(){
导入(组织。于凡。excel’);
$ list=M( data )-select();
if($list==null){
$this- error(数据库信息为空.,__应用程序_ _ ./Admin/Excel/show );
}否则{
$ row=array();
$row[0]=array(平台名称,帐号,密码);
$ I=1;
foreach($list as $v){
$ row[$ I][ name ]=$ v[ name ];
$ row[$ I][ account ]=$ v[ account ];
$ row[$ I][ password ]=$ v[ password ];
$ I;
$xls=new Excel_XML(UTF-8 ,false,数据列表);
$ xls-添加数组($ row);
$ xls-生成XML(date( ymd his );
公共函数show(){
$m=M(数据);
$ data=$ m-select();
$this- assign(data ,$ data);
$ this-display();
}
视图
excelList.html
!声明文档类型
html lang=en
头
meta charset=UTF-8
标题超过导入导出/标题
/头
身体
差异
h1 TP演示
小型超过导入导出练习/小
/h1
/div
form method= post action= {:U( Excel/import )} enctype= multipart/form-data
输入名称=文件_斯图类型=文件
按钮导入/按钮
/表单
/body
/html
视图
show.html
!声明文档类型
html lang=en
头
meta charset=UTF-8
标题表格展示/标题
/头
身体
差异
h1 TP演示
小型超过导入导出练习/小
/h1
/div
桌子
td h4 b平台名称/b /h4 /td
td h4 b帐号/b /h4 /td
td h4 b密码/b /h4 /td
/tr
foreach name=data item=vo
td {$vo.name} /td
td {$vo.account} /td
td {$vo.password} /td
/tr
/foreach
/表格