【问题标题】:How to specify the correct filename path in yii using PHPExcel?如何使用 PHPExcel 在 yii 中指定正确的文件名路径?
【发布时间】:2015-09-09 10:04:43
【问题描述】:

我在我的 yii php 框架中使用来自 https://github.com/PHPOffice/PHPExcel/tree/develop 的 excel 阅读器插件

我只需要读取 excel 文件,从某些列中获取一些数据。 我在指定要加载的正确文件时遇到问题。

$objPHPExcel = PHPExcel_IOFactory::load($fileName);

我收到了错误。

include(PHPExcel_IOFactory.php): 无法打开流: 没有这样的文件 或目录。

我尝试了太多版本的$fileName。 我尝试使用

到达文件
Yii::getPathOfAlias('webroot... or application... etc');
Yii::app()->baseUrl, homeUrl, basePath, getPath...

... 指定文件位置和文件名的任何可用方式。 没办法,我总是遇到同样的错误。 您知道如何指定 yii 让我提供文件位置信息的文件位置吗?

顺便说一句:该文件位于我的任何公共资产文件夹中。例如themes/default/files/file.xls

【问题讨论】:

  • 你像$objPHPExcel = \PHPExcel_IOFactory::load($fileName);一样使用
  • 类找到了,没有找到的是文件。我无法指定文件地址
  • 但是错误信息说找不到类文件。

标签: php excel file yii path


【解决方案1】:

只需将文件夹PHPExcel/Classes的内容放在你项目的components文件夹中即可。之后components-文件夹必须如下所示:

/PHPExcel.php
/PHPExcel/*

yii 配置文件 main.php 中的 'import'-Array 应该包含条目 'application.components.*'。这将自动加载组件中的类。也可以使用命令Yii::import('application.components.*');

现在应该可以找到这个类了。

【讨论】:

  • 类找到了,没有找到的是文件。我无法指定文件地址
  • 你的 phpexcel 文件在哪里?你使用 yii php excel 插件吗?如果是,是哪个?
  • 感谢您提供帮助...在帖子中我提到了我使用的 git 插件。关于撒谎......正如你所说,它们在组件中,当我使用它们时,我没有无法使用类的问题。我使用 PHPstorm,当未定义类时,它应该加下划线。所以上课没问题。
  • 试试var_dump(file_exists($fileName));
  • 输出为 bool(true)
【解决方案2】:

这行得通...

    Yii::import('ext.PHPExcel.PHPExcel', true);

在导入时再添加一个“true”参数... 谢谢大家

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-16
    • 2014-09-12
    相关资源
    最近更新 更多