Я согласен с Abinadi, что инструмент Майка Кона здесь , вероятно, лучший из доступных на сегодняшний день.
Мы успешно выполнили преобразование для проекта приличного размера и написали блог о процессе: Преобразование классического ASP в PHP
Хотя стандартная справочная таблица с функцией могла бы работать, было бы МНОГО работы, чтобы все очистить. ASP в PHP по-прежнему, вероятно, является одним из самых простых преобразований, но, как уже упоминалось, скорее всего, в итоге получится код, который потенциально плох, но на другом языке.
Инструмент Майка обрабатывает довольно простые одностраничные преобразования и является хорошей отправной точкой, но он устарел, пропуская множество функций и умностей при использовании в большом проекте. Сказав это, все же стоит попробовать даже в текущем состоянии.
Вот список основных моментов, которые мы должны были рассмотреть:
- Не у всех типов есть совместимый тип, например, даты и логические значения
- COM-объекты могут использоваться, но может потребоваться интенсивный рефакторинг
- Переменная чувствительность к регистру (инструменты могут здесь сильно помочь)
- Переменная область видимости (asp любит глобалы)
- чувствительность к регистру HTML / JS Get и Post (сложнее исправить с помощью инструментов)
- Самостоятельные ссылки на объекты, например, для классов PHP требуется $ this-> variable
- Если вы используете множество let / get / set, будьте готовы к более тяжелому перефакторингу
Конечно, вышеприведенный список - это просто то, на что нужно обратить внимание: если вы хотите создать инструмент, вам нужно учесть множество основ синтаксического анализа / токенизации asp-кода, прежде чем даже учитывать вышеуказанные различия.
Удачи всем, кто пытается этот конверсионный проект, сделав это до того, как мы узнаем это чувство.