PHPExcel中的错误

时间:2014-02-10 07:50:43

标签: php phpexcel

我是php的新手。我想用php写一些数据到excel文件。我想将PHPExcel用于此目的,但我不知道该怎么做我已下载并处理文件夹Clases和Expamles到我的项目文件夹然后我尝试了
require_once "Classes/PHPExcel/IOFactory.php"
$objTpl = PHPExcel_IOFactory::load("template.xlsx");
只是这两行,但是它显示错误,然后打开文件然后我在位置C:\wamp\www\scrapproj\Classes\PHPExcel\Reader创建了一个excel文件,它再次在另一行显示错误。显示的错误是
Fatal error: Uncaught exception 'PHPExcel_Reader_Exception' with message 'Could not open tempplate.xlsx for reading! File does not exist.' in C:\wamp\www\scrapproj\Classes\PHPExcel\Reader\Excel2007.php on line 82

请有人帮我解决这个问题。
已更新
现在我更新了我的代码,如下所示:
$objTpl = PHPExcel_IOFactory::load("template1.xlsx");
$objTpl->setActiveSheetIndex(0);
$objTpl->getActiveSheet()->setCellValue('A2', 'PHPExcel');
// $filename=mt_rand(1,100000).'.xlsx';
$objWriter = PHPExcel_IOFactory::createWriter($objTpl, 'Excel5');
if(is_readable('template1.xlsx'))
{
$objWriter->save('template1.xlsx');
}


现在它的运行没有任何错误。但运行页面后我无法直接打开excel文件显示错误

Excel canot open the file template1.xlsx because the file format or its extension is not valid

请帮我解决它

2 个答案:

答案 0 :(得分:2)

您正在当前工作目录中查找该文件,您可以使用getcwd命令查看您的工作目录是什么。

1)

echo getcwd() . "\n";

http://www.php.net/manual/de/function.getcwd.php

此外,检查您是否拥有该文件的权限。

2)

is_readable($filename)

http://www.php.net/manual/en/function.is-readable.php

答案 1 :(得分:2)

回答您的更新问题(将来,请关闭已回答的问题并提出新问题)

您正在使用Excel5 Writer

$objWriter = PHPExcel_IOFactory::createWriter($objTpl, 'Excel5');

用于撰写BIFF格式文件,其文件扩展名为.xls

但是您要使用.xlsx扩展名保存文件

$objWriter->save('template1.xlsx');

用于OfficeOpenXML格式文件


BIFF文件是使用Excel5 Writer创建的,扩展名为.xls

OfficeOpenXML文件是使用Excel2007 Writer创建的,扩展名为.xlsx


不要混合搭配,编剧和扩​​展不可互换