1С-Битрикс. Аналоги php-функций в ядре D7

1С-Битрикс. Аналоги php-функций в ядре D7

1436
27.03.2017
13.05.2017

В битриксе есть много аналогов стандартных функций php, которые, на первый взгляд, могут показаться излишними. Но, как правило, ничего не делается без причины, и все такие функции имеют какие-то важные отличия. Многие из них сделаны для обеспечения совместимости между серверами с различными настройками, в т.ч. для обеспечения безотказной работы в разных кодировках.

\Bitrix\Main\Text\String::htmlEncode()

В старом ядре данный функционал выполняen функция htmlspecialcharsbx. Является аналогом для php-функции htmlspecialchars.

Функция преобразует строку в html-безопасный вид (заменяет кавычки и пр. символы на " и пр.). После этого вы можете вставлять строку в любой атрибут html-тега, заключая ее в кавычки, в т.ч. атрибут value тега input. При использовании стандартной htmlspecialchars при работе в кодировке windows-1251 в php5.4 без явного указания кодировки в третьем параметре функции, можно потерять русский текст. htmlspecialcharsbx даже без параметров скорее всего отработает без ошибок.

\Bitrix\Main\Text\String::htmlDecode()

Аналог в старом ядре - htmlspecialcharsBack. Является аналогом для php-функции htmlspecialchars_decode.

Имеет действие, противоположное \Bitrix\Main\Text\String::htmlEncode и преобразует тест обратно из html-безопасного вида в html-опасный.

\Bitrix\Main\Web\Json::encode()

и

\Bitrix\Main\Web\Json::decode()

Являются аналогами для php-функций json_encode и json_decode.

Функции пребразуют массив php в строку json-формата и обратно. Отличием данных функций от их php-прототипов, является обработка не только utf-8 строк, но также и работа с кодировкой windows-1251.

ToUpper и ToLower

Данные аналоги php-функций strtoupper и strtolower ядра преобразуют строку к верхнему и нижнему регистрам. Отличием данных функций от их php-аналогов является обработка кириллицы в кодировке UTF-8.



Благодарю за внимание! Делитесь вашими замечаниями в комментариях ниже.


P.S. Обращайтесь ко мне за приобретением лицензий и продлений на 1C-Битрикс "Управление сайтом", лицензий на облачную и коробочную версии Битрикс 24 а также за приобретением и внедрением готовых решений на базе 1С-Битрикс от партнеров. За более подробной информацией свяжитесь со мной любым удобным для вас способом


Комментарии

Еще никто не комментировал данную публикацию. Будьте первыми!

Добавить комментарий

captcha

Возврат к списку