• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 手把手教你使用ThinkPHP+phpExcel导入导出Excel数据

手把手教你使用ThinkPHP+phpExcel导入导出Excel数据

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了ThinkPHP+phpExcel,导入导出Excel数据等相关知识,希望对您有所帮助

PHP如何导入带图片的Excel表格呢?图片又如何导出到Excel中呢?导出的Excel如何定义样式使其更加漂亮?下面本篇文章就来给大家一一解决,希望对大家有所帮助!


手把手教你使用ThinkPHP+phpExcel导入导出Excel数据


Excel 是常用的数据整理统计的工具,通常在一些信息化平台中为了更好的实现无纸化或者上云,需要对办公数据进行迁移,从办公电脑迁移到平台上,又或者将平台上的数据下载下来给非开发人员使用,势必会涉及到数据的导入导出,而数据格式非 Excel 不可。

本文将结合实际的开发需求,总结开发过程中 Excel 的导入和导出,涉及的开发框架:

ThinkPHP 3.2

phpExcel

在部署上,对于Excel中图片较多的数据,需要加长超时或者运行时间及增加上传大小限制

代码仓库:https://github.com/QuintionTang/crayon-thinkphp

导入

数据的导入,开始之前需要定义导入数据的格式,而且必须严格按照规定的格式程序才能正确的解析数据。通常的数据导入只是纯文本的数据,本文将导入Excel中带图片的数据,以最大可能覆盖导入需求。

模板

模板是数据导入的基础,下面定义一个简单的数据模板,如下格式:


手把手教你使用ThinkPHP+phpExcel导入导出Excel数据


有文本,有图片,导入数据首选需要读取到Excel文件,因此还需要涉及文件的上传,文件上传成功之后,先检测图片列,直接看代码:

public function excel_import(){    $usedfor = empty($_GET['usedfor']) ? 'picture' : trim($_GET['usedfor']);    $used_for = $usedfor;    import('ORG.Net.UploadFile');    $upload = $this->_upload_init(new \Org\Net\UploadFile(),$usedfor);// 实例化上传类    $attach = array();    $attachment = array();    $attach["success"] = 0;    $info = "";    if(!$upload->upload()) { // 上传错误提示错误信息        $upload_error = $upload->getErrorMsg();        $attach["msg"] = $upload_error;    }else{ // 上传成功 获取上传文件信息        $info =  $upload->getUploadFileInfo();    }    // 上传成功后开始处理    if(is_array($info)){        $info = $info[0];        // PHPExcel 类引入        import("Org.Util.PHPExcel");        import("Org.Util.PHPExcel.Reader.Excel5");        import("Org.Util.PHPExcel.Reader.Excel2007");                 import("Org.Util.PHPExcel.IOFactory.php");        $filePath = $info["savepath"] . $info["savename"];        $input_file_type = \PHPExcel_IOFactory::identify($filePath);        // 开始读取Excel数据        $objExcel = new \PHPExcel();        $objReader = \PHPExcel_IOFactory::createReader($input_file_type);        // 加载Excel文件        $objPHPExcel = $objReader->load($filePath);         $objWorksheet = $objPHPExcel->getActiveSheet();        $data = $objWorksheet->toArray();        $attach_path = C('attach_path');        $subpath = date('YmdHm', time());        // Excel图片存储路径        $imageFileRealPath = $attach_path . "excel_img/".$subpath ."/" ;         mkdirs($imageFileRealPath);        $i = 0;        $rebarRows = array();        // 下面开始处理图片        foreach ($objWorksheet->getDrawingCollection() as $img) {            list($startColumn, $startRow) = \PHPExcel_Cell::coordinateFromString($img->getCoordinates()); //获取图片所在行和列            $imageFileName = uniqid();            try {                switch($img->getExtension()) {                    case 'jpg':                    case 'jpeg':                        $imageFileName .= '.jpeg';                        $source = imagecreatefromjpeg($img->getPath());                        imagejpeg($source, $imageFileRealPath.$imageFileName,100);                        break;                    case 'gif':                        $imageFileName .= '.gif';                        $source = imagecreatefromgif($img->getPath());                        $width = imagesx($source);                        $height = imagesy($source);                        if (function_exists("imagecreatetruecol
  


 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 手把手教你使用ThinkPHP+phpExcel导入导出Excel数据

相关文章

  • Centos7如何启动与切换图形界面
  • 关于ThinkPHP的join关联查询不使用默认的表前缀
  • Illustrator制作出超仿真的缝线文字效果
  • PHPCMSV9单次最多只能上传10个附件的解决方法
  • Javascript怎么禁止事件冒泡
  • 让dede:flink拥有和dede:arclist一样使用limit标签
  • 教你怎么使用shell脚本实现服务器快速设置
  • PhotoShop制作沙漠里的3D立体残破钢筋文字教程
  • 介绍Laravel unit test : 模拟认证的用户
  • Photoshop制作立体效果的草莓艺术字

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • PHP+Redis解决订单限流的实际问题
    • 利用CSS如何实现全兼容的毛玻璃效果?
    • 关键词选择技巧之长尾关键词法
    • html中circle是什么意思
    • thinkphp5与laravel的区别是什么
    • Sublime下怎么建立Node编译系统
    • 搜索引擎营销中作弊的方式—链接作弊
    • 百度与谷歌在SEO表现上的差别
    • 织梦dede 5.7版本图片集和软件标题与关键词输入英文逗号“,”没有了的解决方法
    • Photoshop制作个性时尚的立体字教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有