PHP: Можно ли с помощью классов (интерфейсов или трейтов) сильно сократить код, который повторяется, но всегда чуть другой
Есть парсер, который скачивает с сайта множество архивов, затем, каждый обрабатывает и данные из него кладет в таблицу. Таблицы не связаны между собой, у каждого архива могут быть свои проблемы с данными, например, у одного нужно перевести из одной кодировки, у другого - из другой. Для какой-то таблицы нужно по ходу обработки добавить в таблицу какую-то отметку, в зависимости от наличия или отсутствия в заархивированной бд информации. Одним словом, приходится делать длинную вереницу функций, который очень похожи, но немного отличаются. Выглядит это так:
Парсер архивов.
function 1 (для закидывания в таблицу первого архива).
function 2 (для закидывания в таблицу второго)
и тд. много функций
Код, к сожалению не могу привести... Если можно с помощью объектно-ориентированного программирования как-то отрефакторить это, то хотел спросить знающих, как. Мне бы только понимать принцип, так как тогда буду знать что искать... С объектно-ориентированным программированием знаком очень слабо...
Ответы (1 шт):
Можно и нужно. Вот ознакомьтесь с данными статьями, тут как раз описывается ваша проблема в пункте: Уберите дублирующий код
И можно почитать еще тут