www.wikidata.de-de.nina.az
In diesem Artikel oder Abschnitt fehlen noch folgende wichtige Informationen Die Neuerungen ab Version 2 sind nicht ausreichend beschrieben Hilf der Wikipedia indem du sie recherchierst und einfugst Symfony ist ein in PHP geschriebenes Webframework und eine Menge von wiederverwendbaren PHP Komponenten Bibliotheken Symfony wurde am 18 Oktober 2005 unter der MIT Lizenz veroffentlicht SymfonyBasisdatenEntwickler SensioLabsErscheinungsjahr 22 Oktober 2005Aktuelle Version 6 3 8 1 10 November 2023 Betriebssystem plattformubergreifendProgrammiersprache PHP 2 Kategorie WebframeworkLizenz MIT Lizenz 3 4 deutschsprachig neinsymfony com Inhaltsverzeichnis 1 Geschichte und Philosophie 1 1 Bundles 2 Merkmale 3 Schichten 3 1 Modell 3 2 View 3 3 Controller 4 Versionen 5 Verwendung 6 Literatur 7 Weblinks 8 EinzelnachweiseGeschichte und Philosophie BearbeitenSymfony wird seit 2005 unter der Fuhrung von Fabien Potencier entwickelt Es entstand parallel zur steigenden Popularitat von Ruby on Rails und dem Wunsch nach einem ahnlichen MVC Framework auf PHP Basis Symfony versucht die Konfiguration auf ein Minimum zu beschranken Wenn keine Konfiguration dafur angegeben ist erfolgt die Zuordnung von z B Models zu Datenbanktabellen uber die Namensgleichheit in Singular und Plural Konvention vor Konfiguration Durch die Konsolenanwendung konnen einfache Webseiten mittels Rapid Application Development entwickelt werden Version 2 ist im Juli 2011 erschienen Sie stellt eine Neuimplementierung dar die sich ganzlich von Version 1 unterscheidet Eine einfache Moglichkeit Anwendungen von Version 1 nach Version 2 zu migrieren existiert nicht Das Framework besteht nun aus Modulen sogenannten Bundles welche voneinander vollkommen unabhangig lauffahig sind aber nahtlos in den Framework Prozess integriert werden konnen 5 Durch die Verwendung eines Dependency Injection Containers ist die gesamte Anwendung modular aufgebaut Dies bewirkt eine einfache Testbarkeit und Erweiterbarkeit Ausserdem werden Namespaces unterstutzt Somit erfordert Symfony 2 PHP 5 3 oder hoher Bundles Bearbeiten Bundles sind voneinander geloste Einheiten einer Webapplikation Ein fiktives Gastebuch Bundle enthalt demnach alle Daten die zur vollstandigen Lauffahigkeit des Gastebuchs dienen Dazu gehort nicht nur die erforderliche Anwendungslogik sondern auch Datenbankabfragen und Ressourcen Grafiken Scripts etc Entwickler konnen entwickelte Bundles veroffentlichen so dass andere Nutzer von Symfony diese Applikationseinheiten ohne direkte Codeanderungen integrieren konnen Merkmale BearbeitenKonfiguration mit YAML Annotations XML oder PHP Datenbankzugriff uber ORM Layer Scaffolding von CRUD Interfaces Request Dispatcher und dynamisches Routing fur Clean URLs Templates auf Basis von Twig oder nativer PHP Syntax Helper vereinfachen die Arbeit in den Templates Ajax JavaScript Formulare uvm Mehrsprachigkeit und I18N Support Datenvalidierung uber Constraints Filtern von uber Formulare eingespeistem Schadcode Komponenten fur Session Verwaltung Request Handling und Security Umfassendes Caching der Ausgabe Pluginfahig mit BundlesSchichten BearbeitenDas Entwurfsmuster Model View Controller wird von Symfony wie folgt umgesetzt Modell Bearbeiten Zur Speicherung der Objekte kommen zwei Plugins zur Auswahl Doctrine und Propel mit Dabei handelt es sich um Bibliotheken zur objektrelationalen Abbildung die PHP Objekte in einer relationalen Datenbank speichern Die Beziehungen zwischen verschiedenen Modellen werden uber sogenannte Associations festgelegt Ab der Version 1 1 von Symfony wurde das bisherige Standardframework Propel in ein Plugin ausgelagert und ist nicht mehr fester Bestandteil des Frameworks View Bearbeiten Unter einem View versteht man die Prasentationsschicht der Applikation In der View Schicht werden mit Hilfe des Controllers Inhalte bereitgestellt die oftmals Templates fur die Ausgabe einbeziehen Dabei kann beliebiger PHP Code in einem Template eingebettet werden Symfony bringt sogenannte Helper mit welche bestimmte Ausgaben in Templates erstellen oder formatieren konnen etwa Links oder Formulare Fur sich wiederholende Ausgaben kann man auf Partials zuruckgreifen welche innerhalb der Templates iterierbar sind Controller Bearbeiten Der Controller formuliert die Geschaftslogik und bietet Schnittstellen in Form von Methoden die mit der Logik interagieren Diese Schnittstellen Methoden werden wie in vielen anderen Frameworks auch Actions genannt Es konnen auch Parameter fur die Methoden ubergeben werden Die Struktur der URLs kann mit Hilfe von Routen flexibel angepasst werden Versionen BearbeitenVersion Erscheinungsdatum Support Support bis PHP Version BemerkungenAltere Version nicht mehr unterstutzt 1 0 Januar 2007 3 Jahre Januar 2010 gt 5 0Altere Version nicht mehr unterstutzt 1 1 Juni 2008 1 Jahr Juni 2009 gt 5 1 Sicherheitsrelevante Updates bis Juni 2010Altere Version nicht mehr unterstutzt 1 2 Dezember 2008 15 Monate Februar 2010 gt 5 2Altere Version nicht mehr unterstutzt 1 3 November 2009 1 Jahr November 2010 gt 5 2 Wie 1 4 jedoch mit Kompatibilitats Ebene fur bestehende Symfony Projekte 6 Altere Version nicht mehr unterstutzt 1 4 November 2009 3 Jahre November 2012 gt 5 2Altere Version nicht mehr unterstutzt 2 0 Juli 2011 20 Monate Marz 2013 gt 5 3 2 Umstieg auf PHP 5 3 7 Altere Version nicht mehr unterstutzt 2 1 September 2012 9 Monate Mai 2013 gt 5 3 3 Uberarbeitete Form Komponente Einsatz von Composer 8 Altere Version nicht mehr unterstutzt 2 2 Marz 2013 8 Monate November 2013 gt 5 3 3 Uberarbeitete Form Komponente Einsatz von Composer 8 Altere Version nicht mehr unterstutzt 2 3 Mai 2013 3 Jahre Mai 2016 gt 5 3 3 Erste LTS Long Term Support VersionAltere Version nicht mehr unterstutzt 2 4 November 2013 8 Monate Juli 2014 gt 5 3 3Altere Version nicht mehr unterstutzt 2 5 Mai 2014 8 Monate Januar 2015 gt 5 3 3Altere Version nicht mehr unterstutzt 2 6 November 2014 8 Monate Juli 2015 gt 5 3 3Altere Version nicht mehr unterstutzt 2 7 Mai 2015 3 Jahre Mai 2018 gt 5 3 9 Zweite LTS Long Term Support VersionAltere Version nicht mehr unterstutzt 2 8 November 2015 3 Jahre November 2018 gt 5 3 9 LTS Long Term Support Version 9 Altere Version nicht mehr unterstutzt 3 0 10 November 2015 8 Monate Juli 2016 gt 5 5Altere Version nicht mehr unterstutzt 3 1 11 Mai 2016 8 Monate Januar 2017 gt 5 5 PSR 6 kompatible Cache Komponente LDAP UnterstutzungAltere Version nicht mehr unterstutzt 3 2 November 2016 8 Monate Juli 2017 gt 5 5 9Altere Version nicht mehr unterstutzt 3 3 Marz 2017 8 Monate Januar 2018 gt 5 5 9Altere Version nicht mehr unterstutzt 3 4 November 2017 3 Jahre November 2020 gt 5 5 9 LTS Long Term Support Version 9 Altere Version nicht mehr unterstutzt 4 0 November 2017 8 Monate Juli 2018 gt 7 1 3Altere Version nicht mehr unterstutzt 4 1 Mai 2018 8 Monate Januar 2019 gt 7 1 3Altere Version nicht mehr unterstutzt 4 2 November 2018 8 Monate Juli 2019 gt 7 1 3 Nur noch Sicherheits Updates bis Januar 2020Altere Version nicht mehr unterstutzt 4 3 Mai 2019 8 Monate Januar 2020 gt 7 1 3 Sicherheits Updates bis Juli 2020Altere Version nicht mehr unterstutzt 4 4 November 2019 3 Jahre November 2022 gt 7 1 3 LTS Long Term Support Version Sicherheits Updates bis November 2022Altere Version nicht mehr unterstutzt 5 0 November 2019 8 Monate Juli 2020 gt 7 2 5Altere Version nicht mehr unterstutzt 5 1 Mai 2020 8 Monate Januar 2021 gt 7 2 5Altere Version nicht mehr unterstutzt 5 2 November 2020 8 Monate Juli 2021 gt 7 2 5Altere Version nicht mehr unterstutzt 5 3 Mai 2021 8 Monate Januar 2022 gt 7 2 5Altere Version noch unterstutzt 5 4 November 2021 3 Jahre November 2024 gt 7 2 5 LTS Long Term Support Version Sicherheits Updates bis November 2025Altere Version nicht mehr unterstutzt 6 0 November 2021 14 Monate Januar 2023 gt 8 0 2Altere Version nicht mehr unterstutzt 6 1 Mai 2022 8 Monate Januar 2023 gt 8 1 0Aktuelle Version 6 2 November 2022 8 Monate Juli 2023 gt 8 1 0Zukunftige Version 6 3 Mai 2023 8 Monate Januar 2024 gt 8 1 0Legende Altere Version nicht mehr unterstutztAltere Version noch unterstutztAktuelle VersionAktuelle VorabversionZukunftige VersionAktuellere Informationen finden sich auf der Webseite symfony com releases Verwendung BearbeitenDrupal ab Version 8 12 eZ Publish ab Version 5 13 Silex Framework 14 phpBB ab Version 3 1 15 Contao ab Version 4 16 Shopware ab Version 5 17 Akeneo ab Version 1 17 Magento ab Version 2 0 17 orocrm ab Version 1 18 Pimcore ab Version 5 19 Sylius ab Version 1 20 Zikula ab Version 1 3 21 Literatur BearbeitenFrancois Zaninotto Fabien Potencier The Definitive Guide to symfony Apress 2007 ISBN 1 59059 786 9 auch online verfugbar englisch Timo Haberkern Das Symfony Framework entwickler press 2008 ISBN 3 939084 14 X Fabien Potencier Practical symfony 1 2 for Doctrine 2009 ISBN 978 2 918390 06 0 englisch Fabien Potencier Practical symfony 1 2 for Propel 2009 ISBN 978 2 918390 07 7 englisch Fabien Potencier The symfony 1 2 Reference Guide 2009 ISBN 978 2 918390 05 3 englisch Fabien Potencier Hugo Hamon Symfony Mieux developper en PHP avec Symfony 1 2 et Doctrine Eyrolles 2009 ISBN 978 2 212 12494 1 franzosisch Tim Bowler Wojciech Bancer Symfony 1 3 Web Application Development Packt Publishing Ltd Birmingham 2009 ISBN 1 84719 456 7 S 228 englisch Fabien Potencier Symfony 5 The Fast Track Symfony SAS 2019 ISBN 978 2 918390 37 4 englisch Weblinks Bearbeiten nbsp Commons Symfony Sammlung von Bildern Videos und Audiodateien Offizielle Website Symfony englisch Symfony ReleasesEinzelnachweise Bearbeiten Release 6 3 8 10 November 2023 abgerufen am 19 November 2023 The symfony Open Source Project on Open Hub Languages Page In Open Hub abgerufen am 18 Juli 2018 The symfony Open Source Project on Open Hub Licenses Page In Open Hub abgerufen am 18 Juli 2018 github com Fabien Potencier What is symfony2 Abgerufen am 5 Juni 2012 symfony project org Symfony Versionen Download and Install Abgerufen am 2 November 2011 symfony project org blog Why will Symfony 2 0 finally use PHP 5 3 Abgerufen am 2 November 2011 a b getcomposer org Composer Abgerufen am 24 Juli 2012 a b symfony com The Release Process Abgerufen am 2 Februar 2016 Fabien Potencier Symfony 3 0 The roadmap Abgerufen am 17 Oktober 2015 Fabien Potencier Symfony 3 1 0 released Abgerufen am 1 Juli 2016 Fabien Potencier Symfony2 meets Drupal 8 Abgerufen am 28 August 2013 eZ Systems Jerome Vieilledent eZ Publish 5 from a technical point of view Abgerufen am 24 Juni 2013 Fabien Potencier Silex The PHP micro framework based on the Symfony2 Components Nicht mehr online verfugbar Archiviert vom Original am 15 Februar 2014 abgerufen am 14 Februar 2014 nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot silex sensiolabs org phpBB com phpBB 3 1 Ascraeus Developers Symfony Components Abgerufen am 26 Oktober 2014 Leo Feyer Contao 4 0 0 beta1 verfugbar Abgerufen am 25 November 2015 a b c basecom de SensioLabs Partner Nicht mehr online verfugbar Archiviert vom Original am 22 Februar 2016 abgerufen am 22 Februar 2016 nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot www basecom de OroCRM Projects using Symfony Abgerufen am 29 Mai 2016 SensioLabs Pimcore Projects using Symfony Abgerufen am 24 Januar 2018 englisch Sylius Built On The Shoulders Of Open Source Giants Abgerufen am 2 Januar 2020 englisch Zikula Homepage Abgerufen am 3 Februar 2020 Normdaten Sachbegriff GND 7604038 0 lobid OGND AKS Abgerufen von https de wikipedia org w index php title Symfony amp oldid 239278883