Конвертер формул Excel в PHP

Вставьте формулу из таблицы и получите функцию на PHP 8: тернарные операторы в скобках, строковые функции mb_* и вспомогательные функции для поиска, условных сумм и MOD в стиле Excel.

Обновлено

Можно вставлять формулу с символом = в начале или без него. Разделителями аргументов могут быть как запятые, так и точки с запятой.

Результат

Ссылки на ячейки

Ссылки появятся здесь после ввода формулы.

Дайте ссылкам понятные имена (B2 → price). Диапазоны становятся списками, а диапазоны из нескольких столбцов — списками строк.

Ваши данные никогда не покидают ваш компьютер. Вся обработка выполняется на 100% локально в вашем браузере.

Был ли этот инструмент полезен?0.0 Оценок: 0
Переводите формулы Excel и Google Sheets в JavaScriptIF, SUMIFS, VLOOKUP, XLOOKUP, ROUND, функции для текста и дат.Формула Excel в JavaScript →

Как пользоваться: Формула Excel в PHP

  1. Вставьте формулу из Excel или Google Таблиц либо выберите готовую в разделе Примеры.
  2. Выберите целевой язык. По умолчанию открыт PHP, переключить язык можно в любой момент.
  3. Переименуйте найденные ссылки на ячейки в понятные имена переменных, например B2 → price.
  4. Выберите полную функцию или только выражение, затем скопируйте или скачайте код. Вспомогательные функции добавляются автоматически, если формула в них нуждается.

Превращаем формулы таблиц в PHP

Расценки, счета, стоимость доставки и правила расчёта комиссий часто описывают в Excel, а затем реализуют в PHP-приложении — Laravel, Symfony, WordPress или WooCommerce. Этот конвертер разбирает формулу с учётом приоритета операторов Excel и выдаёт код на PHP 8, который можно вставить в сервисный класс или файл с вспомогательными функциями.

=IFERROR(VLOOKUP(A2, Products!A2:C500, 3, FALSE), "Not found")

function calculate($a2, $products_a2_c500)
{
    return if_error(fn() => vlookup($a2, $products_a2_c500, 3, false), 'Not found');
}

Как функции Excel соответствуют PHP

ExcelPHP
IF(c, a, b)c ? a : b
IFS / SWITCHparenthesized ternaries
AND, OR, NOT&&, ||, !
= and <>== and !=
a & b$a . $b
a ^ b$a ** $b
SUM(A2:A10)array_sum($a2_a10)
ROUND(x, 2)round($x, 2)
MOD(a, b)excel_mod() helper
SUMIFS / COUNTIF…sum_ifs(), count_if() helpers
VLOOKUP / XLOOKUPvlookup(), xlookup() helpers
IFERROR(x, y)if_error(fn() => x, y)
LEFT / MID / LENmb_substr(), mb_strlen()
TODAY() / NOW()new DateTime()

Особенности PHP

  • Вложенные тернарные операторы. Начиная с PHP 8, вложенные тернарные операторы без скобок вызывают фатальную ошибку. Каждый вложенный IF автоматически заключается в скобки.
  • Приоритет конкатенации. В PHP 8 операторы + и - имеют более высокий приоритет, чем ., поэтому "Total: " . $a + $b сначала выполнит сложение. Конвертер в любом случае сохраняет смысл формулы Excel.
  • Многобайтовый текст. LEFT, MID, LEN, UPPER и LOWER используют функции mb_*, поэтому буквы с диакритикой и эмодзи считаются одним символом, как и в Excel.
  • FIND и SEARCH. strpos() возвращает false или смещение от нуля; вспомогательная функция find_pos() возвращает позицию в формате Excel, начиная с единицы (0, если ничего не найдено).
  • MOD. Оператор % и fmod() в PHP сохраняют знак делимого; excel_mod() для отрицательных чисел работает так же, как Excel.
  • Ошибки. IFERROR перехватывает DivisionByZeroError и ошибки поиска через if_error(fn() => …), используя стрелочные функции (PHP 7.4+).
  • Даты. TODAY(), DATE() и YEAR() работают с объектами DateTime.

Как использовать результат

Вспомогательные функции — это обычные функции, которые размещаются выше вашей функции. Во фреймворке их можно перенести в файл-помощник или сделать статическими методами класса. Диапазоны представлены массивами PHP: один столбец — это простой список, а диапазон из нескольких столбцов — список строк.

Поддерживаемые функции: IF, IFS, SWITCH, AND, OR, NOT, XOR, IFERROR, IFNA, ISBLANK, ISNUMBER, ISTEXT, SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, COUNTBLANK, PRODUCT, MEDIAN, ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, SIGN, MOD, POWER, SQRT, EXP, LN, LOG, LOG10, PI, CEILING, FLOOR, RAND, RANDBETWEEN, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, AVERAGEIFS, SUMPRODUCT, VLOOKUP, XLOOKUP, MATCH, INDEX, CONCAT, CONCATENATE, TEXTJOIN, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, FIND, SEARCH, REPT, VALUE, EXACT, TEXT (числовые форматы), TODAY, NOW, DATE, YEAR, MONTH, DAY. Чтобы перенести данные из таблицы, преобразуйте их с помощью Excel в массив PHP.

Также ищут как: vlookup в php, sumif в php, формулы excel laravel, перевод формул таблиц в php.

Инструменты, которые хорошо сочетаются с Формула Excel в PHP

  • Формула Excel в JavaScript — Вставьте формулу из таблицы и получите понятный JavaScript: функцию с именованными параметрами, правильным порядком операций и небольшими вспомогательными функциями для того, чего нет в JavaScript, например SUMIFS и VLOOKUP.
  • Формула Excel в Python — Вставьте формулу Excel или Google Sheets и получите функцию Python с понятными именами переменных, нужными импортами и вспомогательными функциями для SUMIFS, VLOOKUP и округления в стиле Excel.
  • Формула Excel в SQL — Вставьте формулу Excel и получите эквивалентное SQL-выражение или запрос SELECT: IF и IFS как CASE WHEN, SUMIFS и COUNTIFS как условные агрегаты, а также подходящие строковые и датные функции для вашей базы данных.
  • CSV и Excel в SQL — Вставьте ячейки CSV или Excel либо откройте файл .xlsx и получите готовые к выполнению операторы CREATE TABLE и INSERT с корректно экранированными значениями для вашей базы данных.

Часто задаваемые вопросы

Какая версия PHP нужна для результата?
Рекомендуется PHP 8.0 или новее. Стрелочные функции (используются в IFERROR) требуют PHP 7.4, а оператор ** — PHP 5.6.
Почему для строк используются mb_substr и mb_strlen?
Эти функции считают символы, а не байты, поэтому текст с диакритикой или эмодзи даёт тот же результат, что и в Excel. Им нужно расширение mbstring, которое включено почти в каждой установке PHP.
Как передать диапазон в функцию?
В виде массива. A2:A10 превращается в плоский массив значений, а A2:C500 — в массив строк, именно такой формат ожидает vlookup().
Отправляется ли моя формула на сервер?
Нет, конвертация выполняется в вашем браузере.
Можно ли установить Формула Excel в PHP как веб-приложение и пользоваться им офлайн?
Да. Формула Excel в PHP — это веб-приложение (PWA), которое можно установить из браузера, без скачивания из магазина приложений. В Chrome или Edge (Windows, macOS, Linux, ChromeOS) или на Android нажмите вверху этой страницы «Установить приложение»; на iPhone и iPad используйте «Поделиться → На экран «Домой»», а в Safari 17+ на Mac — «Файл → Добавить в Dock». После этого приложение откроется в отдельном окне со своим значком, и так как оно полностью работает в браузере, оно продолжит работать офлайн. Firefox на компьютере не умеет устанавливать веб-приложения. Как работает установка.

Похожие инструменты

localФормула Excel в JavaScriptВставьте формулу из таблицы и получите понятный JavaScript: функцию с именованными параметрами, правильным…localФормула Excel в PythonВставьте формулу Excel или Google Sheets и получите функцию Python с понятными именами переменных, нужными…localФормула Excel в SQLВставьте формулу Excel и получите эквивалентное SQL-выражение или запрос SELECT: IF и IFS как CASE WHEN,…localExcel, CSV и JSON в массив PHPПревращайте строки таблиц или JSON в готовый массив PHP для конфигурационных файлов, сидеров, фикстур и…localCSV и Excel в SQLВставьте ячейки CSV или Excel либо откройте файл .xlsx и получите готовые к выполнению операторы CREATE…localExcel в JSONОткройте книгу .xlsx или вставьте ячейки прямо из Excel или Google Sheets и получите чистый JSON. Числа,…