FFCMS Wiki

Официальная документация разработчика и администратора

Инструменты пользователя

Инструменты сайта


helper:type

Помощники - типы данных

Как мы уже отмечали ранее, помощники в FFCMS предназначены для упрощения выполнения однотипных операций, часто встречающихся при реализации тех или иных алгоритмов, интерфейсов или комплексных задач. Помощники по типам данных в первую очередь предназначены для упрощения и унификации программных алгоритмов в теле контроллеров, моделей и представлений.

Возьмем яркий пример - проверку входящих данных на «пустоту». Представим, что переменная $in содержит некий набор входящих данных от пользователя и нашей задачей является проверить, не пуста ли входящая строка, являются ли входящие данные строкой (string) и содержит ли строка хоть какие либо данные (хоть 1 символ)? Используя классический синтаксис php реализация сводилась бы к следующему:

if (is_string($in) && $in != null) {
    // success
}

однако, использование нестрогой типизации $in != null ( == ) может привести к еще более серьезным последствиям и в дальнейшем привести к неправильной работе кода или его потенциальной уязвимости (что будет, если $in примет значение 00000 или array{0} ?). Данный код может быть записан с использованием стандартного набора типовых помощников ffcms:

if (Obj::isString($in) && !Str::likeEmpty($in)) {
    // success
}

Возможно, данный код является сомнительным со стороны оптимизации, но стоит заметить, что это лишь самый базовый пример применения и типовые помощники умеют куда больше.

helper/type.txt · Последние изменения: 2016/06/23 11:57 (внешнее изменение)