Чтение 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, гита.
Истории из жизни айти и обсуждение кода.
Как Вам статья? Оцените!