当前位置:首页>文章>php导入excel文件(php实现excel表共享)

php导入excel文件(php实现excel表共享)

phpExcel早已停止维护,现在都用phpSpreadSheet。 网上那些phpSpreadSheet教程都啰里啰唆,叨叨这个那个,没个能打的~ 还得看我这个,代码拷走,改改就能用,就是这么粗鲁! 安装 composerrequirephpoffice/phpspreadsheet 代码 <?phpdeclare(strict_types=1);namespaceapp\\controll...

phpExcel早已停止维护,现在都用phpSpreadSheet。

网上那些phpSpreadSheet教程都啰里啰唆,叨叨这个那个,没个能打的~

还得看我这个,代码拷走,改改就能用,就是这么粗鲁!

安装

composer require phpoffice/phpspreadsheet

代码

<?php

declare (strict_types = 1);

namespace app\\controller;

use think\\Request;

use think\\facade\\View;

use think\\facade\\Db;

use PhpOffice\\PhpSpreadsheet\\Cell\\Coordinate;

use PhpOffice\\PhpSpreadsheet\\IOFactory;

use PhpOffice\\PhpSpreadsheet\\Spreadsheet;

use PhpOffice\\PhpSpreadsheet\\Writer\\Csv;

use PhpOffice\\PhpSpreadsheet\\Writer\\Xlsx;

class Xiangmu

{

public function exportExcel()

{

// 查询要导出的数据

$data = Db::query(“select project,price from xiangmu”);

// 实例化

$spreadsheet = new Spreadsheet();

// 获取活动单元格

$sheet = $spreadsheet->getActiveSheet();

// 获取单元格

$cellA = $sheet->getCell(‘A1’);

// 设置单元格的值

$cellA->setValue(‘项目名称’);

// 设置 A 列 列宽

$sheet->getColumnDimension(‘A’)->setWidth(100);

// 设置第一行 行高

$sheet->getRowDimension(1)->setRowHeight(20);

$cellB = $sheet->getCell(‘B1’);

$cellB->setValue(‘操作人’);

$sheet->getColumnDimension(‘B’)->setWidth(20);

$cellC = $sheet->getCell(‘C1’);

$cellC->setValue(‘检测量’);

$sheet->getColumnDimension(‘C’)->setWidth(10);

// 设置样式 标题

$styleArray = [

‘alignment’ => [

‘horizontal’ => ‘center’, //水平居中

‘vertical’ => ‘center’, //垂直居中

],

‘font’ => [

‘name’ => ‘黑体’,

‘bold’ => false,

‘size’ => 10

]

];

// 设置样式 正文

$styleArrayBody = [

‘alignment’ => [

‘horizontal’ => ‘center’, //水平居中

‘vertical’ => ‘center’, //垂直居中

],

‘font’ => [

‘name’ => ‘宋体’,

‘bold’ => false,

‘size’ => 10

]

];

// 应用样式

$sheet->getStyle(‘A1’)->applyFromArray($styleArray);

$sheet->getStyle(‘B1’)->applyFromArray($styleArray);

$sheet->getStyle(‘C1’)->applyFromArray($styleArray);

// 给sheet起个名字

$sheet->setTitle(‘项目’);

// 从 A2 开始填充数据

foreach ($data as $k => $v) {

$n = $k + 2;

// 获取单元格

$cellA = $sheet->getCell(‘A’ . $n);

// 设置单元格的值

$cellA->setValue($v[‘project’]);

$cellB = $sheet->getCell(‘B’ . $n);

$cellB->setValue(‘民族复兴不可阻挡’);

$cellC = $sheet->getCell(‘C’ . $n);

$cellC->setValue($v[‘price’]);

}

$file_name = ‘导出数据.xlsx’;

// 实例化导出类

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

header(‘Content-Disposition:attachment;filename=’ . $file_name);

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

$writer = IOFactory::createWriter($spreadsheet, ‘Xlsx’);

$writer->save(‘php://output’);

}

}

上面代码直接保存成一个.php文件,就能用。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
文章

mamsds桌面倒计时插件设置(电脑桌面倒计时软件推荐)

2022-1-18 12:06:37

文章

类似visio的免费软件是什么(国产visio替代软件推荐)

2022-1-18 12:06:40

重要说明

本站资源大多来自网络,如有侵犯你的权益请联系管理员 青年人  或给邮箱发送邮件834379394@qq.com 我们会第一时间进行审核删除。 平台资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!


如果你遇到支付完成,找不到下载链接,或者不能下载,或者解压失败,先不要忙,加管理员的QQ:834379394 (管理员有可能有事情或者在睡觉不能及时的回复您,QQ留言后,请耐心等待即可!)

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索