使用PHPExcel读取和写入excel文件

使用PHPExcel读取和写入excel文件,php,phpexcel,Php,Phpexcel,您好,我正在使用的读写excel文件。当我阅读excel文件并编写新的数据图时,excel文件中有图形。这是第7个例子,即 07reader.php,但将include文件从“05featuredemon.php”更改为“33chartcreate bar.php” 因为我需要图表 error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); define('E

您好,我正在使用的读写excel文件。当我阅读excel文件并编写新的数据图时,excel文件中有图形。这是第7个例子,即 07reader.php,但将include文件从“05featuredemon.php”更改为“33chartcreate bar.php” 因为我需要图表

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');

date_default_timezone_set('Europe/London');

/** Include PHPExcel_IOFactory */
require_once '../Classes/PHPExcel/IOFactory.php';


if (!file_exists("33chartcreate-bar.xlsx")) {
exit("Please run 33chartcreate-bar.php first." . EOL);
}

echo date('H:i:s') , " Load from Excel2007 file" , EOL;
$objPHPExcel = PHPExcel_IOFactory::load("05featuredemo.xlsx");

 echo date('H:i:s') , " Write to Excel2007 format" , EOL;
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));
echo date('H:i:s') , " File written to " , str_replace('.php', '.xlsx',   pathinfo(__FILE__, PATHINFO_BASENAME)) , EOL;


// Echo memory peak usage
 echo date('H:i:s') , " Peak memory usage: " , (memory_get_peak_usage(true) / 1024 / 1024) , " MB" , EOL;

// Echo done
echo date('H:i:s') , " Done writing file" , EOL;
 echo 'File has been created in ' , getcwd() , EOL;
错误报告(E_ALL);
ini设置(“显示错误”,真);
ini设置(“显示启动错误”,TRUE);
定义('EOL',(PHP_SAPI=='cli')?PHP_EOL:'
'); 日期默认时区设置(“欧洲/伦敦”); /**包括PHPExcel\u工厂*/ require_once'../Classes/PHPExcel/IOFactory.php'; 如果(!file_存在(“33chartcreate bar.xlsx”)){ 退出(“请先运行33chartcreate-bar.php。”.EOL); } 回显日期('H:i:s'),“从Excel2007文件加载”,EOL; $objPHPExcel=PHPExcel_IOFactory::load(“05featuredemo.xlsx”); 回显日期('H:i:s'),“写入Excel2007格式”,EOL; $objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007'); $objWriter->save(str_replace('.php'、'.xlsx'、u文件_u)); 回显日期('H:i:s'),“文件写入”,str_replace('.php','.xlsx',pathinfo('uuuu文件,pathinfo_基本名称)),下线; //回波存储器峰值使用率 回显日期('H:i:s'),“峰值内存使用率:”,(内存获取峰值内存使用率(true)/1024/1024),“MB”,下线; //回音完成 回送日期('H:i:s'),“完成写入文件”,下线; echo“文件已在”getcwd(),EOL中创建;

请帮助我

您需要明确地告诉PHPExcel读取和写入图表

$objReader->setIncludeCharts(TRUE);

如示例所示

编辑

显式勺子馈送类型示例

//  Create a reader for an Excel2007 file
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
//  Tell the reader to include charts when it loads a file
$objReader->setIncludeCharts(TRUE);
//  Load the file
$objPHPExcel = $objReader->load("33chartcreate-bar.xlsx");


//  Do some stuff to the file


//  Create a writer for an Excel2007 file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
//  Tell the writer to include any charts when it saves a file
$objWriter->setIncludeCharts(TRUE);
//  Save the file
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));

您需要明确地告诉PHPExcel读取和写入图表

$objReader->setIncludeCharts(TRUE);

如示例所示

编辑

显式勺子馈送类型示例

//  Create a reader for an Excel2007 file
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
//  Tell the reader to include charts when it loads a file
$objReader->setIncludeCharts(TRUE);
//  Load the file
$objPHPExcel = $objReader->load("33chartcreate-bar.xlsx");


//  Do some stuff to the file


//  Create a writer for an Excel2007 file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
//  Tell the writer to include any charts when it saves a file
$objWriter->setIncludeCharts(TRUE);
//  Save the file
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));

如果您有任何示例,请将其交给我PHPExcel发行版的/Tests目录中应该有几个示例:例如32chartreadwrite.php和34chartupdate.php当我将xlsx文件ie从32readwrite.xlsx更改为33chartcreat-bar.xlsx时,图表将从中消失。这是怎么发生的我不知道这是怎么发生的。。。。我对您如何更改它的猜测可能不准确我只更改文件名$inputFileNames='templates/32readwrite.xlsx';to$inputFileNames='templates/32chartcreate bar.xlsx';如果您有任何示例,请将其交给我PHPExcel发行版的/Tests目录中应该有几个示例:例如32chartreadwrite.php和34chartupdate.php当我将xlsx文件ie从32readwrite.xlsx更改为33chartcreat-bar.xlsx时,图表将从中消失。这是怎么发生的我不知道这是怎么发生的。。。。我对您如何更改它的猜测可能不准确我只更改文件名$inputFileNames='templates/32readwrite.xlsx';to$inputFileNames='templates/32chartcreate bar.xlsx';