php-excel

PHP Excel导入

徘徊边缘 提交于 2021-02-11 16:01:06
public function importFile() { $file = request()-> file ('file' ); $params = $this ->request->param(); //可以获取到参数 if (! $file ) { $this ->error('请选择导入文件' ); } // 保存的文件路径 $info = $file ->move(ROOT_PATH . 'public' . DS . 'uploads' );       //获取文件路径 $filePath = ROOT_PATH . 'public' . DS . 'uploads' . DS . $info -> getSaveName();       //找不到文件 if (! is_file ( $filePath )) { $this ->error('无相关记录' ); }       //===========开始 $PHPReader = new \PHPExcel_Reader_Excel2007(); if (! $PHPReader ->canRead( $filePath )) { $PHPReader = new \PHPExcel_Reader_Excel5(); if (! $PHPReader ->canRead( $filePath )) {

PHP导入Excel表

末鹿安然 提交于 2021-02-11 15:28:50
初始化参数,先导入PHPExcel类 /* * * 读出Excel表格数据 * @param $filename 文件名 * @param string $encode 编码格式 * @return array Excel数据 * @throws PHPExcel_Reader_Exception */ function read( $filename , $encode = 'utf-8' ) { require_once './PHPExcel/IOFactory.php' ; $objPHPExcelReader = PHPExcel_IOFactory::load( $filename ); $reader = $objPHPExcelReader -> getWorksheetIterator(); // 循环读取sheet foreach ( $reader as $sheet ) { // 读取表内容 $content = $sheet -> getRowIterator(); // 逐行处理 $res_arr = array (); foreach ( $content as $key => $items ) { $rows = $items ->getRowIndex(); // 行 $columns = $items ->getCellIterator(); /

PhpSpreadsheet(暂记)

左心房为你撑大大i 提交于 2021-01-12 01:49:18
PHPExcel与PhpSpreadsheet? PhpSpreadsheet是PHPExcel的下一个版本。它打破了兼容性,大大提高了代码库质量(命名空间,PSR合规性,最新PHP语言功能的使用等)。 官网 : https://phpspreadsheet.readthedocs.io/en/develop/ 软件要求 使用PhpSpreadsheet开发需要以下软件: PHP 5.6或更高版本 PHP扩展php_zip已启用 PHP扩展php_xml已启用 启用PHP扩展php_gd2(如果没有编译) 新功能探索中…… 来源: oschina 链接: https://my.oschina.net/u/3268486/blog/1936440

ThinkPHP3.2 下载、导入Excel表格内容、导出内容到Excel表格功能的设计与实现

天涯浪子 提交于 2020-12-09 07:31:50
下载: 1.引入命名空间: use Org\Net\Http; 2.在入口文件中设置根目录: // 定义根目录的绝对地址 define ('ROOT', str_replace ("\\","/", dirname ( __FILE__ ))); // 定义根目录外的地址 define ('UPLOAD_PATH', str_replace ("\\","/", dirname ( dirname ( __FILE__ )))); 3.控制器中的操作: public function downloadss() {    $work =D('Work'); // 实例化自定义基础模型类 $id = I('get.id' ); $file = $work ->getWorkMsg( $id ); // 根据ID获取文件字段名与下载的文件名称 //要下载的文件的完整路径 $fileurl = ROOT .'/'.'Public'.'/'. $file ['文件字段名' ]; // ROOT.$file; //把路径用点炸开,以便获取文件后缀名 $arr = explode ('.', $file ['文件字段名' ]); // 取得路径的最后尾缀,json_encode()中的第二个参数是为了解决中文转码的问题 $name = json_encode( $file ['name'] .

PHPWord导出word文档

心不动则不痛 提交于 2020-11-19 04:57:11
最近接了个把数据导出到word文档的需求,之前一直都是使用PHPExcel库导出excel的,还是头次接到导出到word文档的需求,我想既然有PHPExcel,那么肯定也会有PHPWord库吧,在网上一搜,还真有!而且都是phpoffice家的。看了下文档,最终决定使用模板的方式来导出数据,感觉也是最简单的一种方式了。 过程如下: 使用composer下载PHPWord到项目中 composer require phpoffice/phpword 可以看到,phpword的下载量还是挺高的 下载完后就可以开始制作我们的需求模板了,如下图所示,模板中使用 ${变量名} 作为占位符,到时候用代码替换即可,${company_name}、${pic}等都是占位符 制作好模板就可以开始写代码了。 //导出word大致可以分为三步 //1.创建模板对象 $document = new TemplateProcessor('./template.docx'); //2.插入数据 //插入文字 $document->setValue('company_name', 'XXX有限公司'); //插入图片 $document->setImageValue('pic1', './img/gyy.jpeg'); $document->setImageValue('pic2', './img/zyt

thinkphp5.0数据导出excel表格

只愿长相守 提交于 2020-10-28 07:28:51
第一步、创建Model类文件(名称自定) 第二步、在类中写入以下代码 <?php namespace Admin\admin\model; use think\Model; class MarkModel extends Model{ //导出预约信息 public function outExcel1(){ $del=@implode(",",$_POST["del"]); if($del!=""){ $art = db('messga'); $where['id'] = array('in',$del); $rs = $art->where($where)->order('id desc')->select(); foreach ($rs as $v){ $excdata[]=array( 'id'=>$v["id"], 'names'=>$v["names"], 'phone'=>$v["phone"], 'email'=>$v["email"], 'cid'=>$v["cid"], 'companynames'=>$v["companynames"], 'tel'=>$v["tel"], 'num'=>$v["num"], 'p_names'=>$v["p_names"], 'dates'=>date('Y-m-d H:i:s',$v["dates"]) ); }

thinkphp5.0数据导出excel表格

廉价感情. 提交于 2020-08-17 16:54:32
第一步、创建Model类文件(名称自定) 第二步、在类中写入以下代码 <? php namespace Admin\admin\model; use think\Model; class MarkModel extends Model{ // 导出预约信息 public function outExcel1(){ $del =@ implode (",", $_POST ["del" ]); if ( $del !="" ){ $art = db('messga' ); $where ['id'] = array ('in', $del ); $rs = $art ->where( $where )->order('id desc')-> select(); foreach ( $rs as $v ){ $excdata []= array ( 'id'=> $v ["id"], 'names'=> $v ["names"], 'phone'=> $v ["phone"], 'email'=> $v ["email"], 'cid'=> $v ["cid"], 'companynames'=> $v ["companynames"], 'tel'=> $v ["tel"], 'num'=> $v ["num"], 'p_names'=> $v ["p_names"], 'dates

PhpSpreadsheet中文文档 | 简介

我与影子孤独终老i 提交于 2020-08-13 17:14:23
1、PhpSpreadsheet 是什么 PhpSpreadsheet由来: phpexcel 由于版本陈旧性能低下 官方放弃维护 转而开发PhpSpreadsheet 用了最新得psr标准因而 对php版本不向下兼容 需要注意!。 PhpSpreadsheet是一个用纯PHP编写的库,提供了一组类,使您可以读取和写入不同的电子表格文件格式 PhpSpreadsheet提供了丰富的API接口,可以设置诸多单元格以及文档属性,包括样式、图片、日期、函数等等诸多应用,总之你想要什么样的Excel表格,PhpSpreadsheet都能做到 使用 PhpSpreadsheet 开发的PHP要求 7.1或更高版本 PhpSpreadsheet 支持链式操作 2、PhpSpreadsheet 支持的文件格式 3、PhpSpreadsheet 安装 composer require phpoffice / phpspreadsheet phpspreadsheet中文文档飞机票=》》》》》 来源: oschina 链接: https://my.oschina.net/u/4412764/blog/4492247

excel 列数大于Z时如何使用PHP程序读取

走远了吗. 提交于 2020-08-12 06:59:12
最近 深圳网站建设 搜客来在处理一个项目,需要读取EXCEL数据并导入数据库中。因为EXCEL表格数据列数超过了Z,使用传统方式无能读取。今天特地和大家分享最后的解决方案,代码如下: 本方法使用的是PHPExcel插件,请自行下载。 public static function import_excel($file){ // 判断文件是什么格式 $type = pathinfo($file); $type = strtolower($type["extension"]); $type=$type==='csv' ? $type : 'Excel5'; ini_set('max_execution_time', '0'); Vendor('PHPExcel.PHPExcel'); // 判断使用哪种格式 $objReader = \PHPExcel_IOFactory::createReader($type); $objPHPExcel = $objReader->load($file); $sheet = $objPHPExcel->getSheet(0); // 取得总行数 $highestRow = $sheet->getHighestRow(); // 取得总列数,这里是关键两行 $highestColumn = $sheet->getHighestColumn();

php excel 操作

给你一囗甜甜゛ 提交于 2020-08-11 02:22:52
<?php class Excel { public static function exportExcel($expTitle, $expCellName, $expTableData, $topData, $otherData) { $xlsTitle = iconv('utf-8', 'gb2312', $expTitle);//文件名称 $fileName = $xlsTitle;//or $xlsTitle 文件名称可根据自己情况设定 $cellNum = count($expCellName); $dataNum = count($expTableData); $topNum = count($topData); Vendor('PHPExcel.PHPExcel'); $objPHPExcel = new \PHPExcel(); $cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', 'AK', 'AL',