Есть ли простой способ конвертировать классы C # в PHP? - PullRequest
5 голосов
/ 17 августа 2008

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

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

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

Ответы [ 5 ]

5 голосов
/ 19 августа 2008

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

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

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

3 голосов
/ 17 августа 2008

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

2 голосов
/ 17 августа 2008

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

0 голосов
/ 18 августа 2008

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

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

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

0 голосов
/ 17 августа 2008

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...