Excel表格是我們生活和工作中經(jīng)常用到的工具,我們經(jīng)常會對表格進行一些增刪改查的操作,以滿足我們的需求。在互聯(lián)網(wǎng)時代,通過PHP語言對Excel表格進行操作是非常方便的。下面,本文將介紹如何使用PHP對Excel表格進行增刪改查操作。
一、Excel表格增加數(shù)據(jù)
我們在處理Excel表格時,最常見的操作就是往表格中添加數(shù)據(jù)。在PHP中,可以使用PHPExcel庫對Excel表格進行操作,添加數(shù)據(jù)可以通過如下代碼實現(xiàn):
require_once 'PHPExcel/IOFactory.php'; $objPHPExcel = new PHPExcel(); $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel->getActiveSheet()->setCellValue('A1', '姓名') ->setCellValue('B1', '年齡') ->setCellValue('C1', '性別'); $filename='test.xlsx'; $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save($filename);上述代碼中,我們使用PHPExcel庫生成一個Excel實例并設(shè)置了表格的標(biāo)題行。 通過createWriter()函數(shù)將Excel實例寫入到指定的Excel文件中,實現(xiàn)了Excel表格的增加數(shù)據(jù)操作。 二、Excel表格刪除數(shù)據(jù) 當(dāng)表格中出現(xiàn)臟數(shù)據(jù)或者需要刪除某些行的時候,我們可以使用PHP對Excel表格進行刪除操作。 使用PHPExcel庫可以輕松刪除Excel表格中的某一行或者某一列。代碼實現(xiàn)如下:
$filename='test.xlsx'; $objPHPExcel = PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel->setLoadSheetsOnly(true); $objPHPExcel->load($filename); $objWorksheet = $objPHPExcel->getActiveSheet(); $objWorksheet->removeRow(2,1); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save($filename);上述代碼中,我們通過PHPExcel庫的removeRow()方法實現(xiàn)了刪除表格中的第二行數(shù)據(jù)。需要注意的是,removeRow()方法的第一個參數(shù)表示需要刪除的行數(shù)的起始位置,第二個參數(shù)表示需要刪除的行數(shù)。通過以上代碼即可實現(xiàn)Excel表格的刪除操作。 三、Excel表格修改數(shù)據(jù) 有時候,我們需要對Excel表格中的數(shù)據(jù)進行修改操作。使用PHPExcel庫,可以非常方便地對Excel表格進行修改操作。代碼實現(xiàn)如下:
$oldvalue = "李四"; $newvalue = "張三"; $filename='test.xlsx'; $objPHPExcel = PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel->setLoadSheetsOnly(true); $objPHPExcel->load($filename); $objWorksheet = $objPHPExcel->getActiveSheet(); $cellIterator = $objWorksheet->getRowIterator()->current()->getCellIterator(); foreach ($cellIterator as $cell) { if ($cell->getValue() == $oldvalue) { $cell->setValue($newvalue); } } $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save($filename);上述代碼中,我們通過循環(huán)遍歷所有的單元格,將單元格中的舊數(shù)據(jù)替換成新數(shù)據(jù)。這樣,我們就實現(xiàn)了Excel表格的修改操作。 四、Excel表格查詢數(shù)據(jù) 使用PHP對Excel表格進行查詢操作也非常方便,可以使用PHPExcel庫中的一些方法來實現(xiàn)。代碼實現(xiàn)如下:
$filename='test.xlsx'; $objPHPExcel = PHPExcel_IOFactory::createReader('Excel2007'); $objPHPExcel->setLoadSheetsOnly(true); $objPHPExcel->load($filename); $data = array(); $worksheet = $objPHPExcel->getActiveSheet(); $highestRow = $worksheet->getHighestRow(); for ($row = 1; $row<= $highestRow; $row++) { $rowData = $worksheet->rangeToArray('A' . $row . ':C' . $row, null, true, true); $data[] = $rowData[1]; } print_r($data);上述代碼中,我們通過PHPExcel庫的rangeToArray()方法讀取表格中所有行的數(shù)據(jù),然后通過循環(huán)將數(shù)據(jù)存儲到數(shù)組中并輸出。這樣,我們就能實現(xiàn)Excel表格的查詢操作。 總結(jié): 在本文中,我們介紹了如何使用PHP對Excel表格進行增刪改查操作。對于開發(fā)人員來說,這些操作無非是我們熟悉的CRUD操作。相信本文中的代碼示例已經(jīng)能夠幫助您掌握這些基本操作了,希望讀者可以通過學(xué)習(xí)來提高工作效率。