php连接excel表格数据类型,TP5 中使用PHPExcel 导出导入数据到excel表格

将下载好的PHPExcel文件夹放置在框架中的Vendor目录下,注意目录的结构,按照我的代码来基本上直接引用就能使用,如下图:

d0d583178739c91e3b28e1b4e864f3ba.png

导出数据代码如下

//导出数据表 开始

public function product(){

$list=db('product')->select();

vendor("PHPExcel18.PHPExcel");

$objPHPExcel = new \PHPExcel();

$objPHPExcel->getProperties()->setCreator("ctos")

->setLastModifiedBy("ctos")

->setTitle("Office 2007 XLSX Test Document")

->setSubject("Office 2007 XLSX Test Document")

->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")

->setKeywords("office 2007 openxml php")

->setCategory("Test result file");

//设置列宽度

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(8);

$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);

$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(10);

$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10);

$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(50);

//设置行高度

$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(22);

$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(20);

//设置字体大小加粗 set font size bold

$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);

$objPHPExcel->getActiveSheet()->getStyle('A2:E2')->getFont()->setBold(true);

$objPHPExcel->getActiveSheet()->getStyle('A2:E2')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('A2:E2')->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);

//设置水平居中

$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);

$objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

$objPHPExcel->getActiveSheet()->getStyle('E')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

//合并cell

$objPHPExcel->getActiveSheet()->mergeCells('A1:J1');

//表头内容 set table header content

$objPHPExcel->setActiveSheetIndex(0)

->setCellValue('A1', '数据汇总表 导出时间:'.date('Y-m-d H:i:s'))

->setCellValue('A2', '订单ID')

->setCellValue('B2', '商品名称')

->setCellValue('C2', '价格')

->setCellValue('D2', '库存')

->setCellValue('E2', '图片');

// Miscellaneous glyphs, UTF-8

for($i=0;$i

$objPHPExcel->getActiveSheet(0)->setCellValue('A'.($i+3), $list[$i]['id']);

$objPHPExcel->getActiveSheet(0)->setCellValue('B'.($i+3), $list[$i]['name']);

$objPHPExcel->getActiveSheet(0)->setCellValue('C'.($i+3), $list[$i]['price']);

$objPHPExcel->getActiveSheet(0)->setCellValue('D'.($i+3), $list[$i]['stock']);

$objPHPExcel->getActiveSheet(0)->setCellValue('E'.($i+3), $list[$i]['main_img_url']);

//$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':J'.($i+3))->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

//$objPHPExcel->getActiveSheet()->getStyle('A'.($i+3).':J'.($i+3))->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);

$objPHPExcel->getActiveSheet()->getRowDimension($i+3)->setRowHeight(16);

}

// sheet命名

$objPHPExcel->getActiveSheet()->setTitle('数据表');

// Set active sheet index to the first sheet, so Excel opens this as the first sheet

$objPHPExcel->setActiveSheetIndex(0);

// excel头参数

header('Content-Type: application/vnd.ms-excel');

header('Content-Disposition: attachment;filename="汇总表('.date('Ymd-His').').xls"'); //日期为文件名后缀

header('Cache-Control: max-age=0');

$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); //excel5为xls格式,excel2007为xlsx格式

$objWriter->save('php://output');

} //导出数据表 结束

导入数据代码如下

public function daoru(){

$file = $_FILES['upload']['tmp_name'][0];

$data = $this->import_excel($file);

var_dump($data);

}

private function import_excel($file){

// 判断文件是什么格式

$type = pathinfo($file);

$type = strtolower($type["extension"]);

$type=$type==='csv' ? $type : 'Excel5';

ini_set('max_execution_time', '0');

Vendor('PHPExcel176.PHPExcel');

// 判断使用哪种格式

$objReader = \PHPExcel_IOFactory::createReader($type);

$objPHPExcel = $objReader->load($file);

$sheet = $objPHPExcel->getSheet(0);

// 取得总行数

$highestRow = $sheet->getHighestRow();

// 取得总列数

$highestColumn = $sheet->getHighestColumn();

//循环读取excel文件,读取一条,插入一条

$data=array();

//从第一行开始读取数据

for($j=3;$j<=$highestRow;$j++){

//从A列读取数据

for($k='A';$k<=$highestColumn;$k++){

// 读取单元格

$data[$j][]=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue();

}

}

return $data;

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/554483.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PPTV网络电视如何修复浏览器支持异常

这篇文章主要说的是PPTV网络电视如何修复66760支持异常&#xff0c;希望可以帮助大家。pptv播放器是一款专注视频播放的客户端软件&#xff0c;免费下载安装&#xff0c;观看高清正版影视&#xff0c;可在线享受pptv播放器网站内全部免费高清正版视频&#xff0c;是最个性化、时…

oracle导致的负载高,Oracle 11g 数据库服务器CPU、IO负载高的故障排除流程

使用top查看负载高的进程~ [OSMSRDB]$ toptop - 11:02:43 up 12 days, 17:15, 4 users, load average: 1.50, 0.93, 0.36Tasks: 363 total, 1 running, 362 sleeping, 0 stopped, 0 zombieCpu(s): 1.2%us, 0.3%sy, 0.0%ni, 68.4%id,30.1%wa, 0.0%hi, 0.0%si, 0.0…

母狼高斯普和狐狸

《母狼高斯普和狐狸》母狼生了一只小狼&#xff0c;于是请来狐狸当教父。她说&#xff1a;“总之&#xff0c;狐狸是我们的近亲&#xff0c;见多识广而且头脑聪明;它能教好我儿子&#xff0c;帮他在世界上生存。” 狐狸装得很诚实地说&#xff1a;“亲爱的高司普太太&#xff…

oracle在线中文文档,Oracle TopLink

12.4.4. 事务管理将事务管理纳入到Service操作的执行中&#xff0c;你可以使用Spring通用的声明式的事务管理功能&#xff0c;参加下面的例子&#xff1a;xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-insta…

优酷视频什么是登录保护?

登陆维护是对于移动终端(包括iphone、android、ipad等手机端)的账户维护作用。 打开了登陆维护以后&#xff0c;在一个新的机器设备上开展登陆(包含账户密码登陆、第三方授权登录等方法)时&#xff0c;必须根据验证码短信开展身份认证&#xff0c;验证通过后才可以登录成功&am…

PP视频怎么关闭PP视频虚拟键盘显示

今天小编给广大用户分享PP视频怎么关闭PP视频虚拟键盘显示。此外&#xff0c;在PP视频视频播放器上观看更流畅&#xff0c;画质更清晰&#xff0c;拒绝卡慢钝&#xff0c;而且还有许多自制独播综艺&#xff0c;让你看到停不下来!PP视频视频播放器是PP视频官方推出的一款网络视频…

清理linux 服务器的命令行,使用Linux上的Magic SysRq键修复冻结的X服务器,清理重新启动并运行其他低级命令 | MOS86...

在Linux中&#xff0c;魔术SysRq键可以直接发送命令到Linux内核。您可以使用它来恢复冻结或干净地重新启动系统&#xff0c;即使没有任何反应。魔术SysRq键是作为Linux键盘驱动程序的一部分实现的 - 只要Linux内核仍在运行&#xff0c;它将会工作。只有内核崩溃才能禁用此组合键…

利用火狐浏览器Firebug查看网页相关属性

核心提示&#xff1a;Firebug从各个不同的角度剖析Web页面内部的细节层面&#xff0c;给Web开发者带来很大的便利。 Firebug从各个不同的角度剖析Web页面内部的细节层面&#xff0c;给Web开发者带来很大的便利。 我们先看看在火狐浏览器在没安装Firebug组件前的界面。 利用火…

linux 命令 kps,Linux顶级命令.内存使用情况

我用Jmeter测试我的Web服务器.我启动40个用户测试,然后dump top命令.我所看到的是40(1个主机)apache进程.每个流程都使用appr. 7毫秒的RES内存.但7 * 40是280 MB的内存.但顶部显示总共有508mb和345mb免费.所以只用了163mb ……为什么我有这么奇怪的东西&#xff1f;top - 04:49…

河马先生钓鱼

河马先生钓鱼 今天是周末&#xff0c;河马先生一早就起来&#xff0c;在树下挖东西。 河马先生的邻居小鸟问&#xff1a;河马先生&#xff0c;一大早&#xff0c;你在挖什么? 河马先生说&#xff1a;“我今天去钓鱼&#xff0c;挖点蚯蚓钓鱼用。” 河马先生来到河边&#x…

linux 环境变量详解,linux环境变量实例详解

1.环境变量简单理解了变量的概念&#xff0c;就很容易理解环境变量了。环境变量的作用域比自定义变量的要大&#xff0c;如 Shell 的环境变量作用于自身和它的子进程。在所有的 UNIX 和类 UNIX 系统中&#xff0c;每个进程都有其各自的环境变量设置&#xff0c;且默认情况下&am…

亲爱的稻草人

亲爱的稻草人&#xff1a;连绵的山脚下&#xff0c;有一片绿油油的稻田&#xff0c;风儿吹过&#xff0c;吹起层层稻浪&#xff0c;也吹得稻田里的稻草人微微晃动。 稻草人是妍颖的妈妈新做的&#xff0c;看得出妈妈手很巧。你看稻草人的头上扎着一条红艳艳的方巾&#xff0c;…

乌鸦

乌鸦&#xff1b;从前有一位王后&#xff0c;她有一个还在怀里抱着的小女儿。小姑娘总是调皮不老实&#xff0c;妈妈只能顺着她的性子劝她&#xff0c;可是小姑娘就是不听话。后来&#xff0c;妈妈不耐烦了&#xff0c;正好看见一群乌鸦在皇宫四周飞翔&#xff0c;她就打开窗户…

linux时间子系统之,linux时间子系统(四)

2.3 系统调用timekeeper提供一系列的系统调用&#xff0c;使得用户空间可以获取想要的时间。下面简单的介绍一下clock_gettime系统调用SYSCALL_DEFINE2(clock_gettime, const clockid_t, which_clock,struct timespec __user *,tp){struct k_clock *kc clockid_to_kclock(whic…

腾讯视频上传视频如何同步到企鹅号

企鹅号是腾讯的一个非常棒的产品&#xff0c;让一大批自媒体人赚了钱&#xff0c;我们都知道腾讯视频和企鹅号是互通的&#xff0c;腾讯视频中的视频也可以同步到企鹅号中。所以今天播放器家园网小编教大家如何将视频进行同步。 腾讯视频上传视频如何同步到企鹅号   1、我们首…

linux认令牌操作错误,验证令牌操作错误

问题描述我忘了我的Ubuntu密码&#xff0c;因此我启动进入恢复过程并进入root shell提示符&#xff0c;这就是发生了什么事&#xff1a;rootusername-PC:~# passwd usernameEnter new UNIX password:Retype new UNIX password:passwd: Authentication token manipulation error…

怎么将手机QQ浏览器里面的文章分享给QQ好友

qq浏览器是一个大家都会使用到的搜索软件&#xff0c;用户可以使用手机在这里掌握非常便捷的搜索服务&#xff0c;用户可以打开自己的手机在这里搜索自己想要的文章内容&#xff0c;可以将这些内容分享给朋友&#xff0c;让朋友一起来学习文章内容&#xff0c;那么用户在使用这…

风姐姐,对不起

风姐姐&#xff0c;对不起&#xff1a;一棵木棉树&#xff0c;生长在小山岗上。春风一吹&#xff0c;木棉花就开了&#xff0c;红彤彤的花朵缀满枝头&#xff0c;远看像一片彩云&#xff0c;又像一团火焰&#xff0c;吸引了无数崇敬的目光。每天&#xff0c;彩蝶飞到她身边翩翩…

linux bash 历史记录,Linux Bash History 命令历史记录

此处网址&#xff0c;有详细介绍标准状况下&#xff0c; bash命令历史记录的传统修改方式。linux下面文章&#xff0c;介绍了更符合实际须要的处理方法&#xff1a;git1. 在/etc/bashrc文件末尾内添加内容&#xff1a;不一样版本Linux&#xff0c;该文件名不一样&#xff0c;视…

优酷屏幕录制在哪里_手机优酷怎么录制视频

电脑屏录制软件有很多&#xff0c;但是大部分屏幕录制软件一般必须付钱&#xff0c;而且一些手机软件视频录制后的视頻也有图片水印&#xff0c;比较严重危害了视頻欣赏度。优酷视频的录屏功能设计方案精巧&#xff0c;简易好用&#xff0c;对第一次录制视频的人而言应用十分简…