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


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

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

Обновление: Нет никакой зависимости от.СЕТЕВАЯ структура выходит за рамки основ. Основная цель состояла бы в том, чтобы реструктурируйте свойства класса, перечисления переменных и т.д. PHP будет размещен на сервере Linux.

 5
Author: Peter Mortensen, 2008-08-17

5 answers

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

 2
Author: John Downey, 2008-08-17 15:05:51

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

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

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

 5
Author: maetl, 2008-08-19 04:07:39

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

 3
Author: , 2008-08-17 14:20:42

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

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

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

 0
Author: Vincent Robert, 2008-08-17 14:57:13

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

Это может быть использовано для создания заглушек для выполнения с php, а затем вы можете приступить к переписыванию.ЧИСТЫЙ код в PHP постепенно.

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

 0
Author: JProgrammer, 2008-08-18 05:55:19