Что учесть в разработке интернет-магазина на Bitrix, чтобы не переплачивать за исправление ошибок

Cоставили чек-лист для тех, кто собирается заказывать разработку или делает сайты сам. Собрали опыт команды Antro в ёмкую памятку, чтобы перепроверить себя или подрядчика.

Что учесть в разработке интернет-магазина на Bitrix, чтобы не переплачивать за исправление ошибок
4747

Однажды понадобилось прикрутить к Битриксу библиотечку phpExcel чтобы парсить excel, загружаемый администратором и генерировать отчеты для юзеров.
Казалось бы, дело не хитрое. Но Битрикс работает с флагом mbstring.func_overload=2
Утрировано: этот флаг для ленивых разрабов, которым не хочется переписывать старый код для поддержки Юникода (да-да, php нативно не поддерживал Юникод, поэтому для работы с Unicode строками придумали новые названия функций).
Конечно же, ни одна адекватная библиотека не будет с этим флагом работать по причине непредвиденных ошибок - обычно внутри библиотеки производится проверка значения и сразу выбрасывается ошибка. Переопределить этот флаг для конкретного скрипта с помощью ini_set не представлялось возможным.
Официальный ответ представителя Битрикс на форуме: зайдите в код подключаемой библиотеки и закомментируйте строки с проверкой значения флага. Финиш.
Перевожу для тех, кто не понял. Битрикс - это сомнительного качества оболочка снаружи, и старый как говно мамонта код внутри, который был написан лет 15-20 назад. Так не программируют очень и очень давно. И разработчикам тупо лень переписать это старьё под современные стандарты, поэтому любая интеграция будет неминуемо сталкиваться с глюками и проблемами.
Чтобы справиться с этим, нужны крепкие нервы, поэтому разработчики на Битрикс хотят много денег за свою работу, хотя из уровень не выше фрилансеров из 2007 года.

1
Ответить

Нет этого флага и проблемы уже несколько лет, обновитесь

1
Ответить

Изолировать вызов скрипта через exec() и закинуть в беклог задачу по выкидыванию битрикса :)

Ответить