难以设置Excel PHP

时间:2013-02-03 02:34:47

标签: php excel

我正在尝试使用require加载ExcelPHP API来操作CSV电子表格。我正在使用EasyPHP 12.1与PHP 5.4.6,Apache 2.4.2,MySQL 5.5.27和Xdebug 2.2.1。我在Windows 7上。

当我尝试运行以下代码时:

require_once('classes/PHPexcel/Autoloader.php');

$mySheet = new PHPExcel();

我收到致命错误:

  

注意:使用未定义的常量PHPEXCEL_ROOT - 在第73行的C:\ Program Files \ EasyPHP-12.0 \ www \ Classes \ Classes \ PHPExcel \ Autoloader.php中假定为'PHPEXCEL_ROOT'

     

致命错误:第31行的C:\ Program Files \ EasyPHP-12.0 \ www \ Classes \ Classes \ PHPExcel \ Autoloader.php中找不到类'PHPExcel_Shared_ZipStreamWrapper'

我已经尝试在Autoloader.php文件中注释第31行,这可以防止致命错误,但API无法正常工作,PHP无法识别PHPExcel类。

有人可以帮我弄清楚如何让我的图书馆工作吗?提前致谢!

3 个答案:

答案 0 :(得分:4)

将PHPExcel类加载到您的require中,而不是Autoloader(如Seth)所说。区分大小写也是一个潜在的问题,因为除非你做对,否则你的脚本不会在没有错误的情况下传输:

require_once('classes/PHPexcel/Autoloader.php');

应该是

require_once('classes/PHPExcel.php');

并且库是PHPExcel,而不是您在主题行中调用它的ExcelPHP

答案 1 :(得分:3)

您应该致电

,而不是当前的需要声明
require_once('classes/PHPExcel.php');

该文件定义了您缺少的常量PHPEXCEL_ROOT,然后在自动加载器文件上调用require_once()。它还会加载整个库使用的主class PHPExcel

答案 2 :(得分:0)

由于PHPExcel已转移到PHPSpreadsheet,这可能有点太晚,但如果您仍在使用PHPExcel并且想要使用自动加载器,那么您需要做的就是在需要自动加载器之前定义PHPExcel根目录。

define('PHPEXCEL_ROOT', dirname(__FILE__).'/');

我在自定义mvc框架中使用它作曲家

require_once ROOT . '/vendor/autoload.php';
PHPExcel_Autoloader::Register();