Экспорт данных MySQL в Excel в PHP

Иногда вам может потребоваться экспорт в формат Excel из MySQL для локального использования. База данных или таблицы базы данных MySQL могут быть экспортированы в различные форматы файлов, такие как CSV, XML, SQL, Excel и т. Д., С помощью клиента PHP, phpMyAdmin. Также можно экспортировать данные MySQL с помощью сценария PHP вместо экспорта данных вручную. Когда веб-приложению требуется, чтобы данные из базы данных MySQL хранились в формате Excel, для выполнения этой задачи лучше всего использовать скрипт PHP. В этом руководстве показано, как экспортировать данные MySQL с помощью сценария PHP.

Предварительные требования

Выполните следующие задачи перед экспортом любых данных MySQL. Вы должны открыть клиент MySQL в терминале или клиент phpMyAdmin в браузере для выполнения следующих задач. Таблица с пятью записями будет создана в базе данных после выполнения следующих команд SQL.

A. Создание базы данных MySQL

Выполните следующую команду SQL, чтобы создать базу данных с именем company.

CREATE database `company`;

Б. Создание таблицы

Выполните следующую команду SQL, чтобы создать таблицу с именем items.

CREATE TABLE `items` (
` id` int (11) ПЕРВИЧНЫЙ КЛЮЧ AUTO_INCREMENT,
`name` varchar (100) NOT NULL,
` type` varchar (20) NOT NULL,
`brand` varchar ( 50) NOT NULL,
`price` double (5,2) NOT NULL
) ENGINE = InnoDB;

C. Вставить данные в таблицу

INSERT INTO `items` (` name`, `type`,` brand`, `price`) VALUES
(‘Samsung A40s ‘,’ Mobile ‘,’ Sansung ‘, 300,00),
(‘ Samsung 4523 40 дюймов ‘,’ TV ‘,’ Samsung ‘, 250,00),
(‘ Большой холодильник Walton ‘ , ‘Fridge’, ‘Walton’, 400,00),
(‘Монитор LG 15 дюймов’, ‘Монитор’, ‘LG’, 100,00),
(‘Игровой ноутбук DELL’, ‘Ноутбук ‘,’ Dell ‘, 450.00);

Если вы откроете таблицу элементов из клиента phpMyAdmin, содержимое таблицы элементов будет выглядеть следующим образом.

Экспорт данных MySQL в файл Excel

Здесь вы должны создайте файл PHP с именем read_and_export.php, чтобы создать следующий сценарий, который считывает записи в таблице элементов и создает файл Excel с содержимым таблицы элементов. В сценарии объявляется объект подключения к базе данных для извлечения данных из таблицы базы данных. Затем определяется запрос выбора для чтения всех записей из таблицы элементов, которые хранятся в переменной с именем $ items. Эта переменная используется для отображения содержимого таблицы в табличной форме и создания файла Excel с содержимым таблицы на основе действий пользователя. Когда пользователь нажимает кнопку, которая позже будет создана в HTML-документе для экспорта данных таблицы в формате Excel, функция isset () этого скрипта вернет значение «true». Чтобы создать файл Excel, имя файла определяется с расширением xsl.. Необходимая информация заголовка передается с помощью функции header (). Затем переменная $ heading используется для установки заголовка столбцов в файле Excel. Ключевые значения переменной $ items используются в качестве значений заголовка. Затем функция implode () используется для записи записей таблицы элементов в файл Excel.

read_and_export.php

php
query ($ query);
$ items = array ();

//Сохраняем записи таблицы в массив
while ($ row = $ result-> fetch_assoc ()) {
$ items [] = $ row;
}
//Проверяем, нажата ли кнопка экспорта
if (isset ($ _ POST [«export»])) {
//Определить имя файла с текущей датой
$ fileName = «itemdata -«. date (‘dm-Y’). » .xls «;

//Устанавливаем информацию заголовка для экспорта данных в формате excel
header (‘Content-Type: application/vnd.ms-excel’);
header (‘Content-Disposition: attachment; filename =’. $ fileName);

//Установить переменную в false для заголовка
$ heading = false;

//Добавляем данные таблицы MySQL в файл Excel
if (! empty ($ items)) {
foreach ($ items as $ item) {
if (! $ heading) {
echo implode (» t», array_keys ($ item)). » n»;
$ heading = true;
}
echo implode (» t», array_values ​​($ item)). » n»;
}
}
exit ();
}

?>

Создайте еще один файл PHP с именем index.php со следующим кодом для отображения записей в таблице элементов в браузере с помощью кнопки «Экспорт в Excel». Здесь файл read_and_export.php включен в начало сценария, чтобы установить соединение с базой данных, прочитать данные таблицы и создать файл Excel с данными таблицы, когда пользователь нажимает кнопку. Данные таблицы будут отображаться в табличном формате с использованием начальной загрузки и jQuery.

index.php

Php
// Добавить сценарий для чтения данных MySQL и экспорта в Excel
include («read_and_export.php»);

?>

Экспорт данных MySQL в Excel с помощью PHP

href =» https://stackpath.bootstrapcdn.com/bootstrap/4.3. .1/css/bootstrap.min.css «>
href =» https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/ bootstrap-theme.min.css «>
src =» https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js » >
src = «https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min. js «>

style = ‘color: green’> Информация о таблице элементов

php foreach ($ items as $ item) {?>

php}?>

ID Имя Тип Бренд Цена
php echo $ item [‘id’];?> php echo $ item [‘ имя ‘];?> php echo $ item [‘ type ‘];?> php echo $ item [‘бренд’];?> $ php echo $ item [‘price’];?>

iv>

Вывод

Здесь файлы read_and_export.php и index.php хранятся в папке var/www/html/php/export. Запустите следующий URL-адрес в браузере, чтобы выполнить index.php.

http://localhost/php/export

После выполнения вышеуказанного вы получите следующий результат. URL-адрес в браузере.

При нажатии кнопки кнопка, Экспорт в Excel. Выберите переключатель «Сохранить файл» и нажмите кнопку «ОК», чтобы создать и загрузить файл Excel с данными таблицы.

Когда вы щелкаете загруженный файл, чтобы открыть его, появляется следующее диалоговое окно, в котором вы можете выбрать необходимые параметры перед отображением файла. Данные в каждом столбце разделяются табуляцией ( t) во время создания файла Excel. Итак, перед созданием файла здесь выбирается вкладка.

Содержимое файла Excel будет выглядеть следующим образом.

Заключение

Excel файл может быть создан из таблицы MySQL, разделив значения столбцов определенным разделителем. Разделителем может быть запятая (,) табуляция ( t), точка с запятой (;), пробел () или другие специальные символы. В этом уроке табуляция используется как разделитель. Перед отображением содержимого файла Excel необходимо выбрать соответствующий символ в диалоговом окне «Импорт текста». Если в содержимом данных таблицы MySQL используются одинарные или двойные кавычки, то эти данные не будут сохранены в файле Excel. Я надеюсь, что это руководство помогло вам научиться экспортировать данные таблицы MySQL в файл Excel.

Оцените статью
nanomode.ru
Добавить комментарий