gpt4 book ai didi

cakephp - 未找到类 'PHPExcel_IOFactory' - CakePHP 和 PHPExcel

转载 作者:行者123 更新时间:2023-12-02 21:47:34 29 4
gpt4 key购买 nike

背景

我在应用程序中使用 PHPExcel 的 IOFactory 时遇到问题。如果我想从头开始生成 Excel 文档,我的 PHPExcel 助手就可以工作(我的应用程序每周创建大约 20 个 Excel 工作表,没有任何问题)。

为什么需要它?

我现在需要合并一些工作表(上传并生成到一个通用工作表中,然后将其发送给任何人。问题是所有工作表都是由不同的人生成的。所以他们将所有这些工作表上传到应用程序,然后合并纸张并将其发送出去。

那问题出在哪里呢?

在我的 PHPExcelHelper.php 文件中,我添加了以下函数:

public function createMasterFile($ExcelFile) {
$MasterFile = PHPExcel_IOFactory::load($ExcelFile);
return $MasterFile;
}

这基本上只是应该获取一个文件,并将所有其他文件作为电子表格添加到该文件中。我正在使用this问题作为指导。

但是,它会引发以下错误:

Error: Class 'PHPExcel_IOFactory' not found 

这告诉我它找不到该类(duh),我需要包含它。

你尝试过什么?

我尝试通过将 require_once('PHPExcel/IOFactory.php'); 添加到位于 PHPExcel.php 文件的末尾来直接添加它Vendors-文件夹。运气不好。

然后我尝试将其添加到我的 PHPExcelHelper.php 文件中的 loadEssentials() 函数中,就像 this one然后我添加了这个:

App::import('Vendor', 'PHPExcel/IOFactory');
if (!class_exists('PHPExcel/IOFactory')) {
throw new CakeException('Vendor class IOFactory not found!');
}

运气不好。

我也尝试通过在我的 Controller 中使用 public $helpers = array('PHPExcel','PHPExcel/IOFactory'); 来调用它,但这只是需要一个助手,但它并没有不存在。所以这也没有给我带来运气。

您想从我们这里得到什么?

任何帮助使其真正发挥作用的帮助。我已经尝试过我认为包含 IOFactory 的逻辑方法,但没有成功。有人可以告诉我如何让 PHPExcel 的 IOFactory 工作吗?

最佳答案

假设你的文件夹结构是这样的

App
Vendor
PHPExcel
PHPExcel.php
PHPExcel
IOFactory.php

你应该使用

App::import('Vendor', 'PHPExcel', array('file' => 'PHPExcel'.DS.'PHPExcel.php'));
App::import('Vendor', 'PHPExcel_IOFactory', array('file' => 'PHPExcel'.DS.'PHPExcel'.DS.'IOFactory.php'));

关于cakephp - 未找到类 'PHPExcel_IOFactory' - CakePHP 和 PHPExcel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19269082/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com