将两个或多个 xls 文件合并为工作表 PHPExcel

2023-11-26

我一直在到处寻找如何使用两个现有文件执行此操作,看起来所有文档都是关于创建新文件的。我想获取其中一个文件并将第二个文件作为新工作表添加到其中,然后将其保存到服务器。 我一直在尝试这样的做法,但没有成功:

$file="test.xls";
$file2="test2.xls";
$outputFile = "final.xls";
$phpExcel = new PHPExcel($file);
$phpExcel->getActiveSheet();
$phpExcel->setActiveSheetIndex(0);
$phpExcel->addSheet($file2);
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$outputFile");
header("Cache-Control: max-age=0");
$objWriter = PHPExcel_IOFactory::createWriter($phpExcel, "Excel5");
file_put_contents($outputFile, $objWriter);

任何帮助将不胜感激。对 PHP 非常陌生。


现在没有人读过文档吗?文件夹中有一个完整的文档,名为/Documentation关于将文件读取到 PHPExcel 对象(称为PHPExcel User Documentation - Reading Spreadsheet Files),以及数十个示例(/Documentation/Examples/Reader文件夹是一个很好看的地方),而且他们都没有使用new PHPExcel($file)。任何示例或任何文档都没有说在保存时使用 file_put_contents() 。

$file1="test.xls";
$file2="test2.xls";
$outputFile = "final.xls";

// Files are loaded to PHPExcel using the IOFactory load() method
$objPHPExcel1 = PHPExcel_IOFactory::load($file1);
$objPHPExcel2 = PHPExcel_IOFactory::load($file2);

// Copy worksheets from $objPHPExcel2 to $objPHPExcel1
foreach($objPHPExcel2->getAllSheets() as $sheet) {
    $objPHPExcel1->addExternalSheet($sheet)
}

// Save $objPHPExcel1 to browser as an .xls file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel1, "Excel5");
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$outputFile");
header("Cache-Control: max-age=0");
$objWriter->save('php://output');
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将两个或多个 xls 文件合并为工作表 PHPExcel 的相关文章

  • 在 url 中传递百分号 (%) 并使用 php 获取其准确值

    我正在尝试在 url 中传递百分号 例如 B6011000995504101 SB 但当我回声时 它又回来了 011000995504101 SB 我想要与在 URL 中传递的值完全相同的值 我尝试使用 urlencode 函数 但它给了我
  • 通过jquery ajax()和serialize()提交html表单

    我想通过 jquery ajax 提交此表单 这是我所做的 但它不起作用 即表单正在提交并刷新页面 但我没有看到响应 即在同一页面上打印数组 HTML
  • 如何使用 Facebook API 发布到我自己的页面

    我想使用 API 将更新发布到我拥有的 Facebook 页面 我按照中的说明进行操作这个答案 https stackoverflow com a 28418469 517371获得 a 短期访问令牌对于我的用户 确保授予publish s
  • 获取结果到文本字段

    我有两个可以应用更改的表 但我需要回应基于特定标准所做的更改 现在 对于第一个表 所做的任何更改都会被回显 但是我不确定如果对第二个表 其他 进行更改 如何回显这些更改 if isset POST submit if isset POST
  • PHP 类似数组的对象

    我需要能够像这样设置我的对象 obj gt foo bar 然后我需要将它用作数组 如下所示 if obj foo bar more code here 只需添加implements ArrayAccess到您的类并添加所需的方法 公共函数
  • 更改管理仪表板 WooCommerce 小部件标题

    我想将 WooCommerce 仪表板小部件标题从 WooCommerce 状态 更改为其他内容 我知道我需要在 Functions php 中使用钩子 但我正在努力使这项工作正常进行 我在 WooCommerce 中找到了生成仪表板小部件
  • 根据注册后的时间自动删除Wordpress用户?

    在使用用户访问管理器的基本 WordPress 3 1 设置中 是否可以自动删除 x 天前的用户 我没有找到此功能的插件 人们将如何实施这一举措 我是否能够使用 sql 或 php 查询设置一个 cron 作业 从而每天自动从数据库中删除
  • PHP 的 Dom Node 查找 href 属性问题

    我正在尝试使用 php domDocument 从某些数据的 url 中提取 href 以下拉动网址的锚点 但我想要网址 events i race 1 trim cols gt item 1 gt nodeValue 如果有帮助的话 这里
  • 为什么 Stripe Checkout 不将客户姓名添加到客户记录中?

    我正在尝试从 Stripe Checkout 表单提交中检索各种数据 我只是使用 Stripe 仪表板中提供的 Stripe Checkout 代码 In my checkout submission completed我有一个正在尝试检索
  • 在 PHP 中扩展单例

    我正在使用一个 Web 应用程序框架 其中一部分由许多服务组成 所有服务均以单例形式实现 它们都扩展了一个 Service 类 其中实现了单例行为 如下所示 class Service protected static instance p
  • PHP 中的基本 URL

    我有一个两难的困境 它已经困扰我很长一段时间了 我有一个本地测试服务器 其设置如下 127 0 0 1 我的网站在离线模式下如下所示 127 0 0 1 websitename index php 我的网站实时版本如下所示 websiten
  • Laravel 9.x 登录应用程序时目标类不存在错误

    尝试为管理面板制作一个登录应用程序以轻松编辑网站的其余部分 我有一个名为AuthController它执行多种操作 例如登录 注销 我决定只使用一个 而不是使用两个不同的控制器 当我去 login在我的浏览器上它返回Target class
  • 新行分隔符不适用于 group_concat 函数

    我有一根绳子 name lastname name2 lastname2 包含数据库表中的值 我想显示它 喜欢 name lastname name2 lastname2 我使用 group concat 函数 它适用于逗号分隔符 但我需要
  • 从其他域发送电子邮件而不是垃圾邮件

    这个问题问了一遍又一遍 仍然没有好的解决方案 当有人使用 php 发送电子邮件并将另一个域放在 from 中时 它最终会成为垃圾邮件 解决方案通常是 使用您的 发件人 并将您想要的域名放入 回复 中 将您的域列入主要邮件服务的白名单 第一个
  • 使用 PHP 上传、调整图像大小并裁剪图像中心

    我想要创建一个非常非常基本的上传 调整大小和裁剪 PHP 脚本 其功能与 Twitter 用于上传头像图片的方法相同 无论如何我最后检查过 我希望脚本拍摄任何尺寸的图像 将最短边的大小调整为 116 像素 然后裁剪顶部和底部 如果是横向 则
  • PHP随机输出数组元素

    我如何从大约 20 个元素的数组中随机回显 5 个元素 Thanks 这有效吗 values array rand input 5 或者 作为更灵活的功能 function randomValues input num 5 return a
  • SQL 未插入到 Yii 中具有关系的表中

    我正在尝试创建一个用户 但所有值都没有插入到数据库中 Systems user 表与partys 表有关系 因为party id 是sytems user 的主键 没有插入任何内容 甚至没有错误 它只是返回到 创建 页面 这是我的架构 Ta
  • 带缓存的简约 PHP 模板引擎,但不带 Smarty?

    有大量的问题 https stackoverflow com search q php template engine cache寻找 正确的 PHP 模板引擎 但它们都不专注于缓存 有谁知道一个轻量级 高质量 基于 PHP 5 的模板引擎
  • 学说 - 获取下一个和上一个记录

    这样我就已经获取了一些记录 我已创建日期字段 现在我想按日期获取下一条和上一条记录 通过以下方式让它工作 qb this gt createQueryBuilder a next qb gt expr gt gt a created dat
  • SplFileObject + LimitIterator + 偏移量

    我有两行数据文件 两行仅用于我的示例 实际上 该文件可以包含数百万行 并且我使用 SplFileObject 和 LimitIterator 进行偏移 但这种组合在某些情况下会有奇怪的行为 offset 0 file new SplFile

随机推荐