Преобразование классов с псевдо-именным пространством для использования & quot; real & quot; Пространство имен

Я нахожусь в точке рефакторинга довольно большого проекта, который был разработан с использованием соглашения о псевдо-именах, например:

<?php
// Filename: Classes/OtherSubNamespace/Foo.php
class Vendor_OtherSubNamespace_Foo
{
}

Я хочу использовать пространство имен, используя рекомендации PSR-4, и изменить класс таким образом:

<?php
namespace Vendor\OtherSubNamespace;

<?php
// Filename: Classes/OtherSubNamespace/Foo.php
class Foo
{
}

Сложность заключается не только в рефакторинге самого класса, но и во всех других классах, которые ссылаются на этот класс в проекте.

PHPStorm, кажется, делает хорошую работу, используя Move Class а также Rename Class инструменты рефакторинга, но он не имеет функциональности для выполнения пакетного рефакторинга.

Я также посмотрел на PHP рефакторинг браузера но не нашел соответствующей функциональности.

Существуют ли какие-либо другие инструменты, которые могут рекурсивно реорганизовывать имена классов / вводить пространства имен, о которых я не знаю?

3

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …