ThinkPHP 是一个流行的 PHP 开发框架,它提供了丰富的功能和组件,方便开发者快速构建 Web 应用程序。导出 Excel 文件到本地是 Web 开发中常见的需求之一,通常用于数据备份、报表生成等场景。
以下是一个使用 ThinkPHP 导出 Excel 文件到本地的示例代码:
<?php
namespace app\index\controller;
use think\Controller;
use think\facade\Request;
use think\facade\Filesystem;
class ExportController extends Controller
{
public function export()
{
// 模拟数据
$data = [
['id' => 1, 'name' => '张三', 'age' => 28],
['id' => 2, 'name' => '李四', 'age' => 35],
['id' => 3, 'name' => '王五', 'age' => 42],
];
// 创建 Excel 文件
$excel = new \PHPExcel();
$excel->setActiveSheetIndex(0);
$excel->getActiveSheet()->setTitle('用户数据');
// 设置表头
$excel->getActiveSheet()->setCellValue('A1', 'ID');
$excel->getActiveSheet()->setCellValue('B1', '姓名');
$excel->getActiveSheet()->setCellValue('C1', '年龄');
// 填充数据
$row = 2;
foreach ($data as $item) {
$excel->getActiveSheet()->setCellValue('A' . $row, $item['id']);
$excel->getActiveSheet()->setCellValue('B' . $row, $item['name']);
$excel->getActiveSheet()->setCellValue('C' . $row, $item['age']);
$row++;
}
// 保存到本地
$file = Filesystem::disk('local')->put('exports/user_data.xlsx', $excel->getActiveSheet()->toArray(null, true, true, true));
if ($file) {
return json(['code' => 200, 'msg' => '导出成功', 'path' => $file]);
} else {
return json(['code' => 500, 'msg' => '导出失败']);
}
}
}
通过以上方法,你可以轻松实现 ThinkPHP 导出 Excel 文件到本地的功能,并解决常见的导出问题。
领取专属 10元无门槛券
手把手带您无忧上云