Rakovskiy, делаем класс для настроек, в настройках надо организовать получение конфига, то есть получение тех нужных тебе настроек (шаблоны, маски...) , сохранение (файл например) настроек, получение настроек из файла, добавление аргументов в настройки, возможно настройки уже имеют какие то данные по умолчаниюТакой класс нужно реализовать в зависимости от того где будут храниться настройки, я бы например реализовал всё это в БД. Сделал модуль, в котором добавлял бы маски и сайты ЧС, заполнил бы массив этими настройками и запихнул всё это в кеш.
класс черных_листов должен в конструкторе получать из настроек нужные данные и заполнять нужные свойства класса
У меня класс делает тоже самое только принимает эти данные по другому, через свойства.
Не знаю правильно или нет, но я считаю, что лучше принимать данные через свойства, а не параметры метода ИМХО
Принцип замены я бы тоже по другому сделал, str_ireplace вообще корявая и с utf может глюкнуть, так же в листах стоит предусмотреть фильтры по регулярному выражению или например по домену верхнего уровня
Ну тут согласен с тобой. Изначально все сделал на strtr() но она регистрозависиммая, теперь думаю попробовать реализовать через preg_replace, но не знаю как она с массивами работает.