我是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
请帮我解决它
答案 0 :(得分:2)
您正在当前工作目录中查找该文件,您可以使用getcwd命令查看您的工作目录是什么。
1)
echo getcwd() . "\n";
http://www.php.net/manual/de/function.getcwd.php
此外,检查您是否拥有该文件的权限。
2)
is_readable($filename)
答案 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
不要混合搭配,编剧和扩展不可互换