最近,刚过完年,部门想要统计一下去年部门的各种各样的一些数据,因此有一些EXCEL表格中的数据统计难以实现,需要借助程序来完成复杂的数据统计,因此自己最近也了解
了一下关于php操作excel的一些东西,其中比较常用的还是PHPEXCEL这个第三方工具(虽然php自带的函数fgetcsv也可以实现一些excel的功能,但是总体来说不如这个插件)。
下面是我使用的一个小小的例子:(注:需要先下载PHPExcel的插件,下面是我的插件路径)
1 require_once 'F:/wamp/www/PHPExcel/Classes/PHPExcel/IOFactory.php'; 2 3 if (!file_exists("tian.xlsx")) { 4 exit("Please run tian.php first." . EOL); 5 }
6 7 // echo date('H:i:s') , " Load from Excel2007 file" , EOL; 8 // $callStartTime = microtime(true); 9 10 $objPHPExcel = PHPExcel_IOFactory::load("tian.xlsx"); // tian.xlsx是我要读取的excel的名称
11 $objPHPExcel->setActiveSheetIndex(0); 12 $info = array(); 13 // $objPHPExcel->getActiveSheet()->SetCellValue("Y2", "hello"); // 这个方法是设置坐标为Y2的单元格的值为“hello” 14 for($i=2;$i<=2506;$i++){ 15 $num = "R$i"; 16 $info[$num] = $objPHPExcel->getActiveSheet()->getCell($num)->getValue(); // 这个方法是循环的获取纵坐标是R的单元格中的值 17 } 18 // print_r($info);die; // 将获取的值放入到$info的数组中,然后进行下列的处理
19 $t1 = 0; 20 foreach($info as $key=>$v ){ 21 $infos = explode("\n",$v); 22 $infos = array_filter($infos); 23 // var_dump($infos); 24 // var_dump(count($infos)); 25 $t1 += count($infos); 26 // $total = count($infos); 27 // $objPHPExcel->getActiveSheet()->SetCellValue($key, $total); 28 // die; 29 } 30 echo $t1;