У меня есть один файл PHP в устаревшем проекте, длина которого не менее нескольких тысяч строк. Он преимущественно разделяется на несколько различных условных блоков с помощью оператора switch примерно с 10 вариантами. В каждом случае есть что-то вроде очень похожего - если не точного дубликата - блока кода. Какие методы доступны для меня, чтобы идентифицировать эти блоки кода как одинаковые или близкие к одинаковым, чтобы я мог абстрагироваться от этого кода и начать рефакторинг всего файла? Я знаю, что это возможно очень вручную (разделите каждый оператор case в коде на отдельные файлы и Diff), но мне интересно, какие инструменты я мог бы использовать для ускорения этого процесса.
Спасибо.