Ich habe gerade einen Job in Corporate America zurückbekommen, und ich habe einen Haufen php 4 Flat Files geerbt. Ich möchte nach Symfony 2 migrieren, aber auf keinen Fall erhalte ich die Erlaubnis, das Ganze neu zu bewerten.
Hat jemand Vorschläge für die Migration kleiner Teile oder Abschnitte eines Projekts nach Symfony 2? Vielleicht könnte ich ein Verzeichnis mit der gesamten alten Codebasis haben und anfangen, indem ich nur das Routing in Symfony 2 benutze, um die alten flachen Dateien zu packen?
Wenn jemand irgendwelche Vorschläge hat, würde ich sie gerne hören.
Zuerst haben Sie gefragt, ob Sie die Anwendung umgestalten können? Sie können einen Geschäftsfall basierend auf erstellen:
Ein vollständiger Re-Faktor ist möglicherweise nicht so kompliziert oder zeitraubend, wie Sie sich vorstellen, und er kann parallel ausgeführt werden, während die alte App beibehalten wird.
Nun, das zu tun, was Sie vorschlagen, ist ein bisschen schwieriger. Sie müssen Folgendes beachten:
Wenn die oben genannten Punkte kein Problem darstellen, können Sie die php4-Struktur zum Web-Ordner hinzufügen, um direkt darauf zugreifen zu können, und nacheinander die Routen ersetzen, wenn Sie in Symfony jeden Bildschirm erstellen.
Diese Vorschläge sind sehr kontextbezogen. Es hängt wirklich davon ab, wie komplex Ihre Anwendung ist und wie unordentlich sie wirklich ist.
Viel Glück, tho!
Fügen Sie zunächst einen benutzerdefinierten Frontcontroller als Front-End für diese flachen Dateien ein.
Sie können alte URLs mit mod_rewrite
an den neuen Frontcontroller umleiten.
Pfade können dann in index.php durch $_SERVER['PATH_INFO']
Vom Front-Controller aus können Sie feinkörnige schrittweise Umleitungen zu jeder vordefinierten Lösung durchführen, zu der Sie wechseln möchten. Für die URLs, für die Sie die alte Funktionalität beibehalten möchten, sollten einige include("./".$_SERVER['PATH_INFO'])
den Trick machen.
Mein Rat ist, es in Schritte zu brechen. Oft akzeptiert das Management eine Reihe kleinerer Kosten viel einfacher als einmalige einmalige Kosten. Ich würde mich darauf konzentrieren, den Code aufgeräumt und PHP5 bereit zu machen, bevor ich zu Symfony2 migriere.
Sobald der Code sauber ist, sollte die Integration von Symfony2 in Ihr Projekt ziemlich einfach sein.