通过Podio Export API下载的文件无法通过代码读取

时间:2016-11-24 18:12:46

标签: php podio

用例:

使用批量EXPORT API从不同的应用程序导出数据,以合并到主excel文件中并将其用于报告目的...

实施细则

我使用Podio导出API从应用程序获取数据。应用程序名称是Kall8-number-text(作为示例)..这里是代码片段

代码段

$batch_id = PodioItem::export(11804702,"xlsx",array("filters" => array( "kall8-number-text" => "510-592-5916") ));

PodioBatch::get( $batch_id );
$file = PodioFile::get($file_id);

// Download the file. This might take a while...
$file_content = $file->get_raw();

// Store the file on local disk
$path_to_file= "downloads/".$name;
file_put_contents($path_to_file, $file_content);

问题描述:

我试图使用phpexcel库读取下载的文件,但收到错误&#34;您试图通过越界索引设置活动表:0。实际页数为0&#34; < / p>

此错误显示该文件没有工作表,但不是这样。文件有数据/表格,并在打开该文件时显示。

一个有趣的事实,如果我打开相同的excel文件(手动双击)并保存而不做任何更改,那么相同的代码工作正常。在我的端到端流程中,我不能每次都添加一个手动步骤来打开文件以继续...

为了您的信息,我认为这是一个PHPExcel错误,并与Mark Ba​​cker(协调员PHPOffice Suit)联系,他回答了以下看似真实的评论。

&#34;我的猜测是生成的文件中的非标准命名空间,在MS Excel修复中加载和保存&#34;

文件阅读代码

$objReader = new PHPExcel_Reader_Excel2007();
$objReader->setReadDataOnly(true);
$objPHPExcel = $objReader->load('callsheet.xlsx');
$objPHPExcel->setActiveSheetIndex(0);
$dataArray = $objPHPExcel->getActiveSheet()->toArray(null, true,true,true);
var_dump($dataArray);

错误跟踪

致命错误:未捕获的异常&#39; PHPExcel_Exception&#39;使用消息&#39;您试图通过越界索引设置活动工作表:0。实际工作表数为0。&#39;在E:\ xampp \ htdocs \ podioexcel \ Classes \ PHPExcel.php:688堆栈跟踪:#0 E:\ xampp \ htdocs \ podioexcel \ test.php(18):PHPExcel- setActiveSheetIndex(0)在第688行的E:\ xampp \ htdocs \ podioexcel \ Classes \ PHPExcel.php中抛出#1 {main}

你能帮我解决这个问题吗?这完全阻碍了我的项目。

文件路径:https://drive.google.com/file/d/0B79S561prrEBUDY1NEhXQ1JySWM/view

Stackoverflow的原始问题:Error While loading excel sheet Using phpexcel

埃贾兹

0 个答案:

没有答案