cakePHP: перегрузка дезинфицировать - PullRequest
1 голос
/ 29 сентября 2010

В последней версии cakePHP 1.3.4 я обнаружил, что Sanitize :: html возвращает html-объекты с двойным кодированием - из-за недавно добавленного четвертого параметра htmlentities 'double_encode'.

Вот соответствующий билет на тортPHP: http://cakephp.lighthouseapp.com/projects/42648/tickets/1152-sanitizehtml-needs-double_encode-parameter-in-htmlentities

Поскольку мне нужно использовать cakePHP 1.3.4 на PHP 5.2.14, мне нужно изменить параметр double_encode. Есть ли способ перегрузить метод Sanitize :: html в торт, чтобы мне не пришлось возиться с ядром?

1 Ответ

2 голосов
/ 29 сентября 2010

Вы можете создать подкласс в каталоге /app/libs:

App::import('Sanitize');

class MySanitize extends Sanitize {

    public static function html(...) {
        ...
    }

}

Вам придется перейти на использование MySanitize вместо Sanitize, но это не должно быть большой проблемой. Текст найти / заменить может позаботиться об этом, если вы уже используете его много.

...