1

我正在使用 php-excel-reader 读取两个 excel 文件(从此)

读取第一行的两个文件后,我正在比较它。如果它们相同,那么我会将包含的文件附加到其他文件中。要编写我正在使用的文件

现在为此我想关闭一个文件,但该功能在 php-excel-reader 中不可用

这是我的代码

compare file

{

$data = new Spreadsheet_Excel_Reader($filepath);

$data1 = new Spreadsheet_Excel_Reader($destinationfilepath);

}

unset($data);

unset($data1);


if($flag==0)
{

$excel = new ExcelWriter($destinationfilepath); 

// read the source file

 $finalarray= array();

for($m=1;$m<$sourcefilerowcount;$m++)

    { 

           $charvalue='A';

             $temprow=$m+1;

              for($n=0;$n<$destinationcolnum;$n++)
        {

            $data = new Spreadsheet_Excel_Reader($filepath);

                            $finalarray[$n]=$data->val($temprow,$charvalue);

                            $charvalue++;

                    }

             print_r($finalarray)."<br/>";

     $excel->writeLine($finalarray);
  }
4

1 回答 1

2

无需显式调用 close() 函数,因为文件在 load() 方法中自动关闭。如果您查看定义了 PHPExcel_Reader_Excel2007 的 Excel2007.php,您将看到:

public function load($pFilename)
{
    ...
    $zip = new ZipArchive;

    $zip->open($pFilename);
    ...
    $zip->close();
    return $excel;
}

只需取消设置您的 PHPExcel_Reader 对象,数据将从内存中删除:

$objReader = PHPExcel_IOFactory::createReader('Excel2003XML');
$objPHPExcel = $objReader->load("Excel2003XMLTest.xml");
...
unset($objPHPExcel);
unset($objReader);
于 2013-06-18T07:06:30.173 回答