Столкнулся с задачей - вывести ссылки из фильтра в карту сайта
Показалось, что !всё" просто, но столкнулся с проблемой, что метод createFilterString не экранирует значения, перед записью в базу данных.
Итого, у меня есть значения поля 7
, 15
, 15,7
В базу они запишутся 7,15,15,7
Т.е. разобрать такую строку и превратить обратно в url - не представляется возможным
Предлагаю ввести экранирование urlencode
для значений фильтра, перед записью в базу и вычислением хэша
вот туточки
Для сохранения обратной совместимости, ввести второй аргумент для createFilterString
public static function createFilterString($filter, $safe=true)
И по нему экранировать или не экранировать
Ну и везде, где пытаемся получить запись из базы добавить выборку по safe и unsafe хэшам