Четене на excel в PHP - основни методи на класа PHPExcel, агенция за интернет индустрия и дизайн R-BAND
PHPExcel е библиотека за обработка на данни във формат MS Excel. С негова помощ можете да четете и записвате информация във файлове, да форматирате съдържанието им, да извършвате операции с формули, стилове и др. PHPExcel изисква PHP 5.2 или по-нова версия и ZIP, XML и GD2 разширения. Забележка: Разширението php_zip е необходимо само когато използвате класовете PHPExcel_Reader_Excel2007, PHPExcel_Writer_Excel2007 и PHPExcel_Reader_OOCalc. Тоест, ако искате да използвате PHPExcel за пълна работа с .xlsx или .ods файлове, тогава имате нужда от разширение zip.
Характеристики на библиотеката PHPExcel:
Инсталиране на PHPExcel: 1) Изтеглете библиотеката от официалния уебсайт http://phpexcel.codeplex.com/ 2) В изтегления архив, от папката класове, копирайте съдържанието в корена на сайта
Състав на архива:
Пример за четене на Excel файл с помощта на класа PHPExcel
За да прочетете данни от файл на Excel, трябва да свържете библиотечния файл PHPExcel и да използвате метода load() на класа PHPExcel_IOFactory. Този метод събира данни от всички от всички листове на текущия документ:
След това формираме масив от всички листове на Excel файла с помощта на цикъл:
Изход на генерирания масив като HTML таблица(и):
Основни методи и свойства на класа PHPExcel
Класът PHPExcel е ядрото на PHPExcel. Той съдържа препратки към съдържащи се листове, настройки за защита на документа и метаданни на документа. В допълнение към горното, този клас включва много други полезни методи за обработка на получените данни. Някои от тях ще бъдат описани по-долу.
getSheetCount() - връща броя листовев книгата;
getSheetNames() - връща списък на всички листове в работната книга, като ги индексира в реда, в който се появяват техните "табове" при отваряне в MS Excel (или други програми за електронни таблици);
getSheet(N) - използва се за достъп до лист по индекс. Индексът на позицията (N) е редът, в който се показват разделите на листа, когато работната книга е отворена в MS Excel (или други програми за електронни таблици);
getSheetByName(list_name) – методът се използва за достъп до лист по неговото име (list_name);
getActiveSheet() - този метод позволява директен достъп до активния лист на документа. Активният лист е този, който ще бъде активен, когато работната книга бъде отворена в MS Excel (или друга подходяща програма за електронни таблици);
setActiveSheetIndex() иsetActiveSheetIndexByName() - с тези методи можете да зададете лист да бъде активен по неговия индекс или име.
Получаване на стойност на клетка по координати
За да получите стойността на клетка, клетката трябва първо да бъде намерена с помощта на метода getCell. Стойността на клетката може да бъде извлечена със следната команда:
В случай, че имате нужда от изчислените стойности на клетките, вместо getValue(), използвайте метода getCalculatedValue():
Получаване на стойността на клетката по редове и колони
За да получите стойността на клетка, клетката трябва първо да бъде намерена в листа с помощта на метода getCellByColumnAndRow. Стойността на клетката може да бъде извлечена със следната команда:
Заключение
Тази статия обхваща основните характеристики на библиотеката PHPExcel в областта на четенето на файлове на Excel. В допълнение към всичко по-горе, е възможно да се по-гъвкавоизползвайте тази библиотека за работа с различни опции за таблици. За тези въпроси се препоръчва да се обърнете към документацията. Библиотеката PHPExcel също е адаптирана за работа с други типове файлове като Excel (BIFF). XLS, Excel 2007 (OfficeOpenXML). XLSX, CSV, Libre / OpenOffice Calc. ODS, Gnumeric, PDF и HTML.