Download the PHP package kebacorp/arrayexcelbuilder without Composer

On this page you can find all versions of the php package kebacorp/arrayexcelbuilder. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package arrayexcelbuilder

ArrayExcelBuilder


The component CREATES an Excel file from the data array or READS from Excel file to array.

Based on PHPOffice/PhpSpreadsheet

For license information check the LICENSE-file.

Latest Stable Version Total Downloads

Requirements:

Installation:

The preferred way to install this extension is through composer.

Either run

or add

to the require section of your composer.json.

Usage:

"Hello world!" example

Matrix data example

Sheet parameter "isRowDirection" example

Рекомендации:

Полезно знать:

Params:

Sheet options

Name Type Default Description
autoSize bool false Авторазмер ячеек. Если у ячейки задана ширина, то "autoSize" будет проигнорирован.
charts array none Массив данных для создания графиков. Подробнее в Charts.
data array none Массив данных. Обязательный параметр.
freezeCell string none Зафиксировать ячейки по координату. Например 'B2' - зафиксирует первую строку и первый столбец.
isRowDirection bool false Заполнять данные построчно, либо по колонкам. По умолчанию заполнение по колонкам.
sheetName string auto generate Заголовок страницы. Если не передавать данный параметр, либо передать пустую строку, то название сгенерируется автоматически.
sheetNameInvalidCharactersReplacement string ' ' Заменитель недопустимых символов в заголовке страницы.
showGridLines bool true Отобразить сетку.

Global cell options

Name Type Default Description
allBorderBottom string 'none' Рамка у всех ячеек снизу: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
allBorderRight string 'none' Рамка у всех ячеек справа: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
allBorderLeft string 'none' Рамка у всех ячеек слева: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
allBorderTop string 'none' Рамка у всех ячеек сверху: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
allBorderBottomColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "allBorderBottom". Цвет заливки рамки у всех ячеек снизу. HEX без #. Например: 'FFFFFF'.
allBorderRightColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "allBorderRight". Цвет заливки рамки у всех ячеек справа. HEX без #. Например: 'FFFFFF'.
allBorderLeftColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "allBorderLeft". Цвет заливки рамки у всех ячеек слева. HEX без #. Например: 'FFFFFF'.
allBorderTopColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "allBorderTop". Цвет заливки рамки у всех ячеек сверху. HEX без #. Например: 'FFFFFF'.
bold bool false Жирный шрифт.
borderBottom string 'none' Рамка у ячейки снизу: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderRight string 'none' Рамка у ячейки справа: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderLeft string 'none' Рамка у ячейки слева: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderTop string 'none' Рамка у ячейки сверху: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderVertical string 'none' Вертикальная рамка у ячейки: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderHorizontal string 'none' Горизонтальная рамка у ячейки: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderBottomColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderBottom". Цвет заливки рамки у ячейки снизу. HEX без #. Например: 'FFFFFF'.
borderRightColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderRight". Цвет заливки рамки у ячейки справа. HEX без #. Например: 'FFFFFF'.
borderLeftColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderLeft". Цвет заливки рамки у ячейки слева. HEX без #. Например: 'FFFFFF'.
borderTopColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderTop". Цвет заливки рамки у ячейки сверху. HEX без #. Например: 'FFFFFF'.
borderVerticalColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderVertical". Цвет заливки вертикальной рамки у ячейки. HEX без #. Например: 'FFFFFF'.
borderHorizontalColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderHorizontal". Цвет заливки горизонтальной рамки у ячейки. HEX без #. Например: 'FFFFFF'.
callback function null Функция обратного вызова. Вызывается во время формирования ячейки. Принимает один аргумент в виде массивов данных (см. Global callback arguments). Для того, чтобы изменения применились, необходимо вернуть измененный аргумент.
columnWidth integer auto Ширина колонки. Если параметр передан нескольким ячейкам, значение будет использовано из последней ячейки в данной колонке.
fillColor HEX color string '' Цвет заливки ячейки HEX без #. Например: 'FFFFFF'.
fontColor HEX color string '' Цвет текста HEX без #. Например: '000000'.
fontSize integer excel default size Размер шрифта.
hAlignment string 'general' Горизонтальное выравнивание текста: general, left, right, center, centerContinuous, justify, fill, distributed - Excel2007 only.
vAlignment string 'bottom' Вертикальное выравнивание текста: bottom, top, center, justify, distributed - Excel2007 only.
protect bool false Защитить страницы от редактирования.
rowHeight integer auto Высота строки. Если параметр передан нескольким ячейкам, значение будет использовано из последней ячейки в данной строке.
styleArray array [] Массив стилей. Смотрите Style array.
value string, number, bool null Значение ячейки. Значение может быть строкой, числом, числом с точкой, булевым значением. Остальные типы кодируются в Json. Если необходимо ввести текст на следующей строке в ячейке, то можно использовать "\n" (ВАЖНО! Текст должен быть в двойных кавычках!). Например: "Текст на первой строке\nТекст на второй строке". Вы также можете вставить формулу в ячейку. Для этого необходимо вставить формулу в виде строки. Например: '=SUM(B2:C2)'
wrapText bool false Перенос строки.

Cell options

Все параметры ячейки:

Name Type Default Description
bold bool false Жирный шрифт.
borderBottom string 'none' Рамка у ячейки снизу: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderRight string 'none' Рамка у ячейки справа: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderLeft string 'none' Рамка у ячейки слева: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderTop string 'none' Рамка у ячейки сверху: none, dashDot, dashDotDot, dashed, dotted, double, hair, medium, mediumDashDot, mediumDashDotDot, mediumDashed, slantDashDot, thick, thin.
borderBottomColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderBottom". Цвет заливки рамки у ячейки снизу. HEX без #. Например: 'FFFFFF'.
borderRightColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderRight". Цвет заливки рамки у ячейки справа. HEX без #. Например: 'FFFFFF'.
borderLeftColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderLeft". Цвет заливки рамки у ячейки слева. HEX без #. Например: 'FFFFFF'.
borderTopColor HEX color string '000000' ВНИМАНИЕ! Необходимо установить "borderTop". Цвет заливки рамки у ячейки сверху. HEX без #. Например: 'FFFFFF'.
callback function null Функция обратного вызова. Вызывается во время формирования ячейки. Принимает один аргумент в виде массивов данных (см. Cell callback arguments). Для того, чтобы изменения применились, необходимо вернуть измененный аргумент.
columnWidth integer auto Ширина колонки. Если параметр передан нескольким ячейкам, значение будет использовано из последней ячейки в данной колонке.
comment string '' Комментарий ячейки. Если передать пустую строку, то комментарий не будет создан.
fillColor HEX color string '' Цвет заливки ячейки HEX без #. Например: 'FFFFFF'.
fontColor HEX color string '' Цвет текста HEX без #. Например: '000000'.
fontSize integer excel default size Размер шрифта.
hAlignment string 'general' Горизонтальное выравнивание текста: general, left, right, center, centerContinuous, justify, fill, distributed - Excel2007 only.
vAlignment string 'bottom' Вертикальное выравнивание текста: bottom, top, center, justify, distributed - Excel2007 only.
image string, array none Если передать строку, то значение запишется как путь к изображению. Путь может быть как относительным, так и абсолютным. Например: 'img/example.jpg'. Либо можно передать массив параметров. Смотрите Image array data.
mergeColumns integer 0 Кол-во ячеек справа, которое необходимо присоединить к текущей ячейке. ВНИМАНИЕ! Сделует избегать пересечения слияния с соседними ячейками!
mergeRows integer 0 Кол-во ячеек снизу, которое необходимо присоединить к текущей ячейке. ВНИМАНИЕ! Сделует избегать пересечения слияния с соседними ячейками!
rowHeight integer auto Высота строки. Если параметр передан нескольким ячейкам, значение будет использовано из последней ячейки в данной строке.
styleArray array [] Массив стилей. Смотрите Style array.
url string null Ячейка со ссылкой на внешний ресурс, либо ссылка на другую страницу внутри документа. Например: 'sheet://"Sheet name"!A1' или 'www.example.com'
value string, number, bool null Значение ячейки. Значение может быть строкой, числом, числом с точкой, булевым значением. Остальные типы кодируются в Json. Если необходимо ввести текст на следующей строке в ячейке, то можно использовать "\n" (ВАЖНО! Текст должен быть в двойных кавычках!). Например: "Текст на первой строке\nТекст на второй строке". Вы также можете вставить формулу в ячейку. Для этого необходимо вставить формулу в виде строки. Например: '=SUM(B2:C2)'
wrapText bool false Перенос строки.

Full example:

Style array

StyleArray - массив стилей ячейки. Доступны все параметры, которые есть у StyleArray в Phpspreadsheet.

Image array data

Name Type Default Description
description string '' Описание изображения.
height integer 20 Высота изображения.
hyperLink string, array none Ссылка на сайт при нажатии на изображение. Может быть как строкой, тогда значение будет записано как ссылка на ресур. Например: 'www.example.com'. Либо можно передать массив параметров. У массива есть два значения - "url" (ссылка на ресурс) и "tooltip" (всплывающая подсказка). Например: ['url' => 'www.example.com', 'tooltip' => 'Это всплывающая подсказка'].
name string '' Название изображения.
offsetX integer 0 Сдвиг изображения по оси X относительно ячейки.
offsetY integer 0 Сдвиг изображения по оси Y относительно ячейки.
path string '' Путь к изображению с расширением. Путь может быть как относительным, так и абсолютным. Например: 'img/example.jpg'.
resizeProportional bool true Сохранять пропорции изображения при изменении размера.
rotation integer 0 Вращение изображения.
width integer 20 Ширина изображения.

Global callback arguments

ВАЖНО! Callback-функции не запустятся, если в конструктор ArrayExcelBuilder передан параметр "allowCallback" раным false (см. ArrayExcelBuilder constructor arguments).

Name Type Description
dataDto ArrayExcelBuilderCellDTO Данные текущей ячейки в виде DTO.
maxCellCoordinates string Максимальные координаты ячейки с данными. Самая нижняя правая ячейка. Например "D10".
maxColumn integer Максимальный индекс колонки с данными.
maxRow integer Максимальный индекс строки с данными.
paramsDto ArrayExcelBuilderCellDTO Глобальные параметры ячеек в виде DTO.
sheetsNumber integer Общее кол-во страниц.
spreadsheet Spreadsheet Объект класса PhpOffice\PhpSpreadsheet\Spreadsheet. Позволяет использовать практически все возможности библиотеки PhpSpreadsheet.

Spreadsheet позволяет использовать практически все возможности, которые есть в библиотеке PHPOffice/PhpSpreadsheet.

Cell callback arguments

ВАЖНО! Callback-функции не запустятся, если в конструктор ArrayExcelBuilder передан параметр "allowCallback" раным false (см. ArrayExcelBuilder constructor arguments).

Name Type Description
cell string Координаты текущей ячейки. Например "B7".
columnId integer Индекс текущей колонки. Отсчет начинается с нуля.
columnName string Буквенное обозначение текущей колонки. Например "C".
dataDto ArrayExcelBuilderCellDTO Данные текущей ячейки в виде DTO.
maxCellCoordinates string Максимальные координаты ячейки с данными. Самая нижняя правая ячейка. Например "D10".
maxColumn integer Максимальный индекс колонки с данными.
maxRow integer Максимальный индекс строки с данными.
paramsDto ArrayExcelBuilderCellDTO Глобальные параметры ячеек в виде DTO.
rowId integer Индекс текущей строки. Отсчет начинается с нуля.
sheetsNumber integer Общее кол-во страниц.
spreadsheet Spreadsheet Объект класса PhpOffice\PhpSpreadsheet\Spreadsheet. Позволяет использовать практически все возможности библиотеки PhpSpreadsheet.

Spreadsheet позволяет использовать практически все возможности, которые есть в библиотеке PHPOffice/PhpSpreadsheet.

ArrayExcelBuilder:

ArrayExcelBuilder constructor arguments

Name Type Default Description
data array [] Данные ячеек.
params array [] Глобальные параметры ячеек.
allowCallback bool true Разрешить запуск callback (см. Cell options). Параметр необходим для того, чтобы обезопасить систему от вызова callback-функций, если данные приходят из сторонних источников.
cache CacheInterface null Кеширование для уменьшения использования оперативной памяти. Если не передать объект, имплементированный от CacheInterface, то кэширование не используется. Внимание, использование кэширования может увеличить время создания файла!

ArrayExcelBuilder methods

Name Arguments Returns Description
build() $this Вносит переданные переданные данные в Spreadsheet. Метод автоматически вызывается перед сохранением, если до этого не был вызван вручную.
getFlatArray() array Возвращает одномерный массив со значениями ячеек всех страниц.
getMatrixArray() array Возвращает трехмерный массив (страница > колонка > строка) со значениями ячеек всех страниц.
getSpreadsheet() Spreadsheet Возвращает Spreadsheet. Если необходимо произвести действия над Spreadsheet после build(), то build() необходимо вызвать вручную перед методом:
load() string $file $this Загружает Spreadsheet из файла. Поддерживаемые форматы: xlsx, xlsm, xltx, xltm, xls, xlt, ods, ots, slk, xml, gnumeric, htm, html, csv.
setAllowCallback() bool $allowCallback $this Разрешить/запретить запуск callback (см. Cell options).
setData() array $data $this Задает данные. Также можно внести данные через конструктор ArrayExcelBuilder (см. ArrayExcelBuilder constructor arguments).
setParams() array $params $this Задает глобальные параметры. Также можно внести параметры через конструктор ArrayExcelBuilder (см. ArrayExcelBuilder constructor arguments).
save() $pathToFile = '', array $options = [], $saveToVariable = false bool, file, Exception, null Генерирует файл и сохраняет его в файл/переменную. Подробнее об аргументах метода в Save arguments.

Save arguments

Name Type Default Description
pathToFile string 'Document_' Путь и название файла для сохранения без расширения.
saveOptions array [] Массив параметров сохранения файла. Смотрите Save options.
saveToVariable bool false Не сохранять файл на диск, а вернуть его в переменную. В примере выше файл вернется в переменную $result.

Save options

Name Type Default Description
format string 'xlsx' Формат выходного файла. Поддерживаемые форматы: XLSX, XLS, ODS, CSV, HTML, PDF.
includeCharts bool true Включить отрисовку графиков. Параметр для форматов: XLSX, XLS, ODS.
office2003Compatibility bool false Включить совместимость с Office 2003. Параметр для форматов: XLSX.
calculateFormulas bool true Рассчитать значения формул. Параметр для форматов: XLSX, XLS, ODS, CSV, HTML, PDF.
useBOM bool true Внести метку BOM кодировки UTF-8. Параметр для форматов: CSV.
enclosure string (one character only) '' Защитный символ, которым будет обрамлена каждая ячейка. Параметр для форматов: CSV.
lineEnding string "\r\n" Символ(ы) окончания строки. Передавать необходимо в двойных кавычках. Параметр для форматов: CSV.
delimiter string (one character only) ';' Разделитель ячеек. Параметр для форматов: CSV.
allSheets bool true Сохранить все страницы. Игнорирует параметр "sheetIndex". Параметр для форматов: PDF.
sheetIndex integer 0 Индекс страницы (отсчет с нуля), который необходимо сохранить. Игнорируется, если параметр "allSheets" равен "true". Параметр для форматов: CSV, PDF.
imagesRoot string '' Корневой путь до изображений. Параметр для форматов: HTML.
pdfBuilder string 'mpdf' Класс генератора PDF-файла. Есть три варианта: mpdf, dompdf, tcpdf. Каждый из них отличается скоростью генерирования, поддержкой различных параметров отображения и размером выходного файла. Параметр для форматов: PDF.

Charts:

Chart options

Name Type Default Description
name string '' Имя графика. Не отображается.
title string none Заголовок графика. Отображается сверху посередине.
xLabel string none Заголовок горизонтальной оси. Отображается слева посередине вертикально.
yLabel string none Заголовок вертикальной оси. Отображается снизу посередине.
chartType string 'lineChart' Тип графика: barChart, bar3DChart, lineChart, line3DChart, areaChart, area3DChart, pieChart, pie3DChart, doughnutChart, scatterChart, surfaceChart, surface3DChart, radarChart, bubbleChart, stockChart.
groupType string 'stacked' Группировка данных: clustered, stacked, percentStacked, standard.
chartStartPosition string 'B3' Координаты страницы, где начинается график. Значение в стиле excel - первая часть строки заглавные латинские буквы, вторая часть из натуральных чисел. Например: 'A10'.
chartEndPosition string 'H18' Координаты страницы, где заканчивается график. Значение в стиле excel - первая часть строки заглавные латинские буквы, вторая часть из натуральных чисел. Например: 'BB3'.
isLegend bool false Отобразить легенду.
legendPosition string 'r' Расположение легенды на графике: 'r' - справа, 'b' - снизу, 't' - сверху, 'tr' - сверху справа.
labels array none Лейблы легенды. Подробнее в Chart labels options.
xValues array none Данные по горизонтальной оси. Подробнее в Chart xValues and yValues options.
yValues array none Данные по вертикальной оси. Подробнее в Chart xValues and yValues options.

Chart labels options

Name Type Default Description
dataType string 'Number' Не обязательный параметр. Тип данных: 'Number', 'String'.
column string none Обязательный параметр. Имя колонки. Именование колонки ведется в латинских буквах начиная от A и далее. Например: 'B'.
row integer none Обязательный параметр. Номер строки. Именование строки ведется из натуральных чисел начиная с 1. Например: 21.
sheetName string none Обязательный параметр. Название страницы, где находится Label.

Chart xValues and yValues options

Name Type Default Description
dataType string 'Number' Не обязательный параметр. Тип данных: 'Number', 'String'.
sheetName string none Обязательный параметр. Название страницы, где находится Label.
startColumn string none Обязательный параметр. Имя колонки, откуда начинаются данные. Именование колонки ведется в латинских буквах начиная от A и далее. Например: 'B'.
startRow integer none Обязательный параметр. Номер строки, откуда начинаются данные. Именование строки ведется из натуральных чисел начиная с 1. Например: 21.
endColumn string none Обязательный параметр. Имя колонки, где заканчиваются данные. Именование колонки ведется в латинских буквах начиная от A и далее. Например: 'B'.
endRow integer none Обязательный параметр. Номер строки, где заканчиваются данные. Именование строки ведется из натуральных чисел начиная с 1. Например: 21.

Full example:


All versions of arrayexcelbuilder with dependencies

PHP Build Version
Package Version
Requires php Version ^5.6|^7.0|^8.0
phpoffice/phpspreadsheet Version ^1.14.1
dompdf/dompdf Version ^0.8.3
mpdf/mpdf Version ^8.0.4
tecnickcom/tcpdf Version ^6.2.13
ext-json Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package kebacorp/arrayexcelbuilder contains the following files

Loading the files please wait ....