Есть ли простой способ конвертировать классы C# в PHP?

Я привык к написанию приложений на C# для Windows. Тем не менее, у меня есть несколько бесплатных хостингов PHP, которые я бы хотел использовать. У меня есть базовое понимание PHP, но я никогда не использовал его объектно-ориентированные возможности.

Есть ли простой способ преобразовать классы C# в классы PHP или просто невозможно написать полностью объектно-ориентированное приложение на PHP?

Обновление: за пределами основы нет.NET Framework. Основной целью было бы реструктурировать свойства класса, перечисления переменных и т. Д. PHP будет размещен на сервере Linux.

5 ответов

Решение

Полностью возможно написать приложение PHP почти полностью в объектно-ориентированной методологии. Вам придется написать некоторый процедурный код для создания и запуска вашего первого объекта, но помимо этого есть множество MVC-сред для PHP, которые все объектно-ориентированы. Одним из примеров, на который я бы посмотрел, является Code Igniter, потому что, на мой взгляд, он немного легче.

PHP не поддерживает перечисления, которые могут быть одной областью несоответствия.

Кроме того, следите за типами коллекций, PHP, несмотря на свои функции OO, не имеет альтернативы чрезмерному использованию типа данных массива. Посмотрите разделы в руководстве по PHP по итераторам, если вы хотите увидеть что-то еще.

Публичные, защищенные, частные и статические свойства классов работают примерно так, как ожидается.

Огромной проблемой будет репликация.Net Framework в PHP, если его использует класс C#.

Я не знаю об инструменте для автоматизации процесса, но вы можете использовать Reflexion API, чтобы просмотреть ваш класс C# и сгенерировать соответствующий класс PHP.

Конечно, здесь трудность состоит в том, чтобы правильно отобразить типы C# на PHP, но при достаточном модульном тестировании вы сможете делать то, что хотите.

Я советую вам пойти по этому пути, потому что я уже сделал преобразование C# в VB и C++. Это была боль, но результат того стоил.

Если проблема заключается в том, что вы хотите перейти на PHP и готовы продолжить работу на сервере Windows с поддержкой.NET, вы можете рассмотреть возможность переноса кода с помощью swig.

Это можно использовать для создания сгенерированных заглушек из php, а затем вы можете постепенно переписывать код.NET в PHP.

Это работает для любого из поддерживаемых языков. то есть. Вы можете постепенно переписать приложение на C++ в Java, если вы действительно этого хотите.

Другие вопросы по тегам