《PHP編程:PHP使用PHPExcel刪除Excel單元格指定列的方法》要點:
本文介紹了PHP編程:PHP使用PHPExcel刪除Excel單元格指定列的方法,希望對您有用。如果有疑問,可以聯系我們。
本文實例講述了PHP使用PHPExcel刪除Excel單元格指定列的方法.分享給大家供大家參考,具體如下:PHP學習
需求是這樣的:PHP學習
有一個系統僅公司內部和外部經銷商使用,在一個導出功能中公司內部員工跟外部經銷商導出的列是不一樣的(某些數據是不能提供給經銷商的)
因為導出的數據都是一樣的(某些列外數據外部沒有)因此并沒有單獨處理,而是統一生成然后根據不同的賬戶再刪除沒有權限的列PHP學習
/** * @Author: HTL * @Description: 移出單元列 * @objPHPExcel: phpexecel object * @remove_columns:要移出的列 */ function _remove_column($objPHPExcel,$remove_columns){ if(!$objPHPExcel || !is_object ($objPHPExcel) || !$remove_columns || !is_array($remove_columns) || count($remove_columns)<=0) return ; //單元格模板值,用于匹配要刪除的列(在excel模板第一列) $cell_val = ''; //單元格總列數 $highestColumm = $objPHPExcel->getActiveSheet()->getHighestColumn(); for ($column = 'A'; $column <= $highestColumm;) { //列數是以A列開始 $cell_val = $objPHPExcel->getActiveSheet()->getCell($column."1"); $cell_val = preg_replace("/[\s{}]/i","", $cell_val); //移出沒有權限導出的列 //移出后column不能加1,因為當前列已經移出加1后會導致刪除錯誤的列 //此問題浪費了幾十分鐘 if(strlen($cell_val)>0 && in_array($cell_val,$remove_columns)) { $objPHPExcel->getActiveSheet()->removeColumn( $column); } else { $column++; } } } //example //導入PHPExcel類 vendor("PHPExcel.PHPExcel"); $filepath = './data/upload/temp.xlsx'; $objReader = \PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel = $objReader->load($filepath); $this->_remove_column($objPHPExcel,array("age","address"));
運行效果如下圖所示:PHP學習
PHP學習
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《PHP數組(Array)操作技巧大全》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》、《PHP數學運算技巧總結》、《php正則表達式用法總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》PHP學習
希望本文所述對大家PHP程序設計有所幫助.PHP學習
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/5888.html