Чтение Excel на PHP
май
24
, 2015
Как подключиться к документу Excel и считать из него данные
Задача: есть excel-документ.
Нужно подключиться к нему и вытащить данные. Для этого нам понадобится библиотека excel_reader2.
Скачать ее можно с нашего сайта здесь
Пример: имеется excel-документ с прайсом цен, которые нужно экспортировать в таблицу БД.
Например, файл price.xls, который содержит в себе 3 столбца: артикул, название и цена соотвественно в столбцах A, B и C.
Товары начинают идти с 10-й строки, заканчиваются на 100-й.
Нужно перенести данные в таблицу БД, под названием goods, с полями id, good, price (артикул и цена - целые числа для упрощения).
// Подключаем библиотеку require_once('excel_reader2.php'); // Выводим время начала парсинга, если нам интересно printf('Начинаем парсинг в %s
', date('y.m.d H:i:s')); // Получаем объект-таблицу $data = new Spreadsheet_Excel_Reader('path/to/excel/file/price.xls', false); $start = 10; $end = 100; // Пустая строка для запроса в БД $insert = ''; // Перебираем строки таблицы for($row = $start; $row <= $end; $row++) { // Получаем данные из ячеек $goodID = trim($data->val($row,'A')); $name = trim($data->val($row,'B')); $price = trim($data->val($row,'C')); // Формируем строку данных для вставки в таблицу $insert .= ",($goodID, '$name', $price)"; } // Формируем готовый запрос в БД $query = 'insert into goods (id, good, price) values '.substr($insert, 1); // Выполняем запрос любыми удобными средствами // Пример для Modx Revo $modx->query($query); printf('Закончили парсинг в %s
', date('y.m.d H:i:s'));
Заходите в группу в контакте -
https://vk.com/webdevkin
Анонсы статей, обсуждения интернет-магазинов, vue, фронтенда, php, гита.
Истории из жизни айти и обсуждение кода.
Истории из жизни айти и обсуждение кода.