比较两张纸以获得差异或检测纸张上的更改

时间:2016-04-14 19:16:11

标签: php phpexcel

一个功能是创建工作表(通过从模板复制工作表),在工作表上填充数据(或不填写),然后将工作表添加到工作表中。

我想跳过没有变化的工作表...由于更新数据的复杂性,要​​么将工作表与模板进行比较,要么知道它是否有变化。< / p>

$inputFileType = PHPExcel_IOFactory::identify("somefile.xls");
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load("somefile.xls");
$sourceSheet = $objPHPExcel->getActiveSheet();
$sheet = $sourceSheet->copy();
//many "potential" changes to the cells
if ($sheet == $sourceSheet) 
    //do action when same
else
    //do action when different

&#34; if($ sheet == $ sourceSheet)&#34;什么是理想的,但我要问的是最好的方法是什么。

哪个是实用且最佳的做法 - 例如我认为以编程方式逐个比较每个单元格将会非常昂贵 - 所以我希望我可以使用其中一种方法的函数。

更新 - 我已添加代码以指示&#34; sheet&#34;

来自

1 个答案:

答案 0 :(得分:1)

不是检查实际内容,而是通过md5_file对文件进行散列并检查结果散列呢?

例如

if(md5_file($file1) == md5_file($file2)){
    continue;
}