PHP使用PHPExcel刪除Excel單元格指定列的方法
本文實(shí)例講述了PHP使用PHPExcel刪除Excel單元格指定列的方法。分享給大家供大家參考,具體如下:
需求是這樣的:
有一個(gè)系統(tǒng)僅公司內(nèi)部和外部經(jīng)銷(xiāo)商使用,在一個(gè)導(dǎo)出功能中公司內(nèi)部員工跟外部經(jīng)銷(xiāo)商導(dǎo)出的列是不一樣的(某些數(shù)據(jù)是不能提供給經(jīng)銷(xiāo)商的)
因?yàn)閷?dǎo)出的數(shù)據(jù)都是一樣的(某些列外數(shù)據(jù)外部沒(méi)有)因此并沒(méi)有單獨(dú)處理,而是統(tǒng)一生成然后根據(jù)不同的賬戶(hù)再刪除沒(méi)有權(quán)限的列
/** * @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 ; //單元格模板值,用于匹配要?jiǎng)h除的列(在excel模板第一列) $cell_val = ''; //單元格總列數(shù) $highestColumm = $objPHPExcel->getActiveSheet()->getHighestColumn(); for ($column = 'A'; $column <= $highestColumm;) { //列數(shù)是以A列開(kāi)始 $cell_val = $objPHPExcel->getActiveSheet()->getCell($column."1"); $cell_val = preg_replace("/[\s{}]/i","", $cell_val); //移出沒(méi)有權(quán)限導(dǎo)出的列 //移出后column不能加1,因?yàn)楫?dāng)前列已經(jīng)移出加1后會(huì)導(dǎo)致刪除錯(cuò)誤的列 //此問(wèn)題浪費(fèi)了幾十分鐘 if(strlen($cell_val)>0 && in_array($cell_val,$remove_columns)) { $objPHPExcel->getActiveSheet()->removeColumn( $column); } else { $column++; } } } //example //導(dǎo)入PHPExcel類(lèi) vendor("PHPExcel.PHPExcel"); $filepath = './data/upload/temp.xlsx'; $objReader = \PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel = $objReader->load($filepath); $this->_remove_column($objPHPExcel,array("age","address"));
運(yùn)行效果如下圖所示:
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《PHP數(shù)組(Array)操作技巧大全》、《php排序算法總結(jié)》、《PHP常用遍歷算法與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《php正則表達(dá)式用法總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHPExcel合并與拆分單元格的方法
- PHPExcel簡(jiǎn)單讀取excel文件示例
- PHPExcel讀取EXCEL中的圖片并保存到本地的方法
- Yii中使用PHPExcel導(dǎo)出Excel的方法
- ThinkPHP基于PHPExcel導(dǎo)入Excel文件的方法
- php中使用PHPExcel讀寫(xiě)excel(xls)文件的方法
- ThinkPHP使用PHPExcel實(shí)現(xiàn)Excel數(shù)據(jù)導(dǎo)入導(dǎo)出完整實(shí)例
- phpexcel導(dǎo)入excel數(shù)據(jù)使用方法實(shí)例
- Codeigniter+PHPExcel實(shí)現(xiàn)導(dǎo)出數(shù)據(jù)到Excel文件
- 使用PHPExcel操作Excel用法實(shí)例分析
- PHPExcel內(nèi)存泄漏問(wèn)題解決方法
- 使用phpexcel類(lèi)實(shí)現(xiàn)excel導(dǎo)入mysql數(shù)據(jù)庫(kù)功能(實(shí)例代碼)
相關(guān)文章
php實(shí)現(xiàn)數(shù)組中出現(xiàn)次數(shù)超過(guò)一半的數(shù)字的統(tǒng)計(jì)方法
在本篇文章中我們給大家分享了php如何實(shí)現(xiàn)數(shù)組中出現(xiàn)次數(shù)超過(guò)一半的數(shù)字的統(tǒng)計(jì)方法,有需要的朋友們參考下。2018-10-10詳解WordPress中簡(jiǎn)碼格式標(biāo)簽編寫(xiě)的基本方法
這篇文章主要介紹了詳解WordPress中簡(jiǎn)碼格式標(biāo)簽編寫(xiě)的基本方法,文中講到了添加和移除簡(jiǎn)碼等的一些PHP函數(shù)的用法,需要的朋友可以參考下2015-12-12PHP封裝的PDO數(shù)據(jù)庫(kù)操作類(lèi)實(shí)例
這篇文章主要介紹了PHP封裝的PDO數(shù)據(jù)庫(kù)操作類(lèi),結(jié)合具體實(shí)例形式分析了php基于PDO針對(duì)數(shù)據(jù)庫(kù)的增刪改查、事務(wù)、批量添加等相關(guān)操作技巧,需要的朋友可以參考下2017-06-06PHP4 與 MySQL 數(shù)據(jù)庫(kù)操作函數(shù)詳解
PHP4 與 MySQL 數(shù)據(jù)庫(kù)操作函數(shù)詳解...2006-12-12PHP設(shè)計(jì)模式之抽象工廠(chǎng)模式實(shí)例分析
這篇文章主要介紹了PHP設(shè)計(jì)模式之抽象工廠(chǎng)模式,結(jié)合實(shí)例形式分析了php抽象工廠(chǎng)模式的概念、原理、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-03-03