Wir werden eine Reihe von REST-Webdiensten in PHP implementieren. Dafür haben wir 2 Frameworks ausgewählt: Symfony 2 und Silex (Mikro-Framework als Phar- Archiv, basierend auf Symfony2).
Im Moment wird es nur ein paar Dienste geben, mit ein paar Ressourcen, die als GET zurückgegeben werden, aber der Methodensatz wird schließlich wachsen und andere Restaktionen beinhalten (put / post / delete).
Hier ist die Liste der Vor- und Nachteile, die ich bisher für diese 2 Frameworks bekommen habe
Symfony2
Pros:
Nachteile:
Silex
Pros:
Nachteile:
Welches ist Ihrer Meinung nach das Beste?
Danke
Hängt von der Größe Ihres Projekts ab und da Sie angegeben haben, dass es ziemlich klein ist, hätte ich Silex gewählt.
Fast alle Nachteile, die Sie für Silex angeben, sind ausgeschlossen, wenn Sie silex durch den Komponisten einbeziehen. Dann lädt es nur die Silex-Abhängigkeit innerhalb von Anbietern und Sie haben weder den Overhead des Phars noch den Mangel an Code-Vervollständigung in Ihrer IDE. Tatsächlich ist die PHAR-Distribution veraltet .
Wie bei Doctrine hat Silex einen Doctrine ServiceProvider , der Doctrine DBAL nahtlos in Silex lädt Projekt. Sie können DoctrineORM einfach selbst hinzufügen oder eines der 3rd party serviceProviders auf GitHub gefunden.
Ich baue eine ziemlich große REST-API mit Silex und habe nicht eine einzige Sache bereut, die mit Silex angefangen hat. Sie erhalten viele der Vorteile der Symfony2-Komponenten, da Silex mit ihnen gebaut wird und einen sehr leichten Rest-ready-Mikrorahmen hat, ohne stundenlange Yaml-Konfiguration und -Einrichtung durchlaufen zu müssen.
Und um ehrlich zu sein, muss ich zugeben, dass ich kein großer Fan der Annotationen bin, Anmerkungen sind in Ordnung, aber ich denke, die Beispiele sind @mcfedr nehmen es ein wenig zu weit, aber das ist nur persönlicher Geschmack.
Ich hoffe, ich habe einige der Vorurteile gegenüber Silex entlarvt. Lass es schwingen, du wirst es nicht bereuen. Auf der anderen Seite werden Sie Symfony2 wahrscheinlich auch nicht bereuen:)