Yii ist ein freies, objektorientiertes, komponentenbasiertes Webframework, das in PHP geschrieben ist. Yii wird „Ji“ oder [ji:] ausgesprochen und ist ein Akronym für „Yes It Is!“ (zu Deutsch „Ja, ist es!“). Im Chinesischen bedeutet Yii so viel wie einfach und evolutionär.[1]

Yii
Basisdaten

Erscheinungsjahr 3. Dezember 2008
Aktuelle Version 2.0.48
(22. Mai 2023)
Betriebssystem plattformübergreifend
Programmier­sprache PHP
Kategorie Webframework
Lizenz BSD-Lizenz
deutschsprachig nein
www.yiiframework.com

Geschichte

Bearbeiten

Yii startete als ein Versuch, viele Nachteile des PRADO-Frameworks zu beheben. Yii war als konzeptuelles Redesign konzipiert und zielte damit auf hohe Performance und trafficlastige Einsatzgebiete ab, Dinge, die am PRADO-Framework kritisiert wurden. Im Oktober 2006, nach rund 10 Monaten Entwicklungszeit, wurde eine erste Alpha-Version von Yii veröffentlicht.

Im Dezember 2008 folgte die stabile Version 1.0. Version 1.1 wurde im Januar 2010 veröffentlicht und brachte unter anderem einen Form-Builder, relationale Active-Record-Abfragen sowie ein Unit-Test-Framework. Der Versionszweig erhält bis heute weiterhin Sicherheitsupdates sowie implementiert inzwischen Unterstützung für PHP 7.

Im Mai 2011 entschieden sich die Entwickler auf eine neue PHP-Version zu setzen und architektonische Fehler zu korrigieren. Aufgrund von fundamentalen Änderungen, wurden die Änderungen im Oktober 2014 als Version 2.0 veröffentlicht, nachdem der Quellcode bereits im Mai 2013 veröffentlicht worden war.

Wurde der Quellcode zunächst über Google Code verwaltet, zogen die Entwickler das Projekt 2013 auf GitHub um. Das Yii-Framework ist unter der BSD-Lizenz lizenziert. Das Framework kann damit kostenlos sowohl für Open-Source, als auch für kommerzielle, proprietäre Webanwendungen verwendet werden.

Merkmale

Bearbeiten
  • Model View Controller (MVC) Pattern
  • Generieren von komplexen WSDL Service-Spezifikationen
  • Internationalisierung und Lokalisierung (I18N und L10N), umfassende Übersetzung von Nachrichten, Datum- und Zeitangaben und Ziffern
  • Cache-System in mehreren Ebenen, unterstützt Datencache, Page-Cache, Fragment-Cache und dynamischen Inhalt
  • Fehlerbehandlung und Logging. Logeinträge können Kategorisiert, gefiltert und zu unterschiedlichen Zielen geleitet werden
  • Sicherheitsmaßnahmen. Verhindern von Cross-Site Scripting (XSS), Cross-Site-Request-Forgery (CSRF) und Session Hijacking
  • Unit und Funktionalitätstests auf Basis von PHPUnit und Selenium
  • Automatische Codegenerierung für das Grundgerüst von Anwendung, erstellen einer CRUD Anwendung durch das Gii Tool
  • Gute Unterstützung für Code von Drittanbietern
  • Yii gilt als verhältnismäßig einfach zu benutzen und nur mäßig komplex.[2]
  • 2013 gehörte es zu den beliebtesten PHP-Frameworks.[2][3]

Versionsverlauf

Bearbeiten
Version Release Veröffentlichung Ende der Funktionsupdates Sicherheitsupdates bis Voraussetzungen
Ältere Version; nicht mehr unterstützt: 1.0 Ältere Version; nicht mehr unterstützt: 1.0 3. Dezember 2008 31. Dezember 2010 PHP 5.1 oder höher
Ältere Version; nicht mehr unterstützt: 1.0.1 4. Januar 2009
Ältere Version; nicht mehr unterstützt: 1.0.2 1. Februar 2009
Ältere Version; nicht mehr unterstützt: 1.0.3 1. März 2009
Ältere Version; nicht mehr unterstützt: 1.0.4 5. April 2009
Ältere Version; nicht mehr unterstützt: 1.0.5 10. Mai 2009
Ältere Version; nicht mehr unterstützt: 1.0.6 7. Juni 2009
Ältere Version; nicht mehr unterstützt: 1.0.7 5. Juli 2009
Ältere Version; nicht mehr unterstützt: 1.0.8 9. August 2009
Ältere Version; nicht mehr unterstützt: 1.0.9 6. September 2009
Ältere Version; nicht mehr unterstützt: 1.0.10 18. Oktober 2009
Ältere Version; nicht mehr unterstützt: 1.0.11 13. Dezember 2009
Ältere Version; nicht mehr unterstützt: 1.0.12 14. März 2010
Ältere Version; noch unterstützt: 1.1 Ältere Version; nicht mehr unterstützt: 1.1.0 10. Januar 2010 31. Dezember 2016 31. Dezember 2016 PHP 5.1 oder höher
Ältere Version; nicht mehr unterstützt: 1.1.1 14. März 2010
Ältere Version; nicht mehr unterstützt: 1.1.2 2. Mai 2010
Ältere Version; nicht mehr unterstützt: 1.1.3 4. Juli 2010
Ältere Version; nicht mehr unterstützt: 1.1.4 5. September 2010
Ältere Version; nicht mehr unterstützt: 1.1.5 14. November 2010
Ältere Version; nicht mehr unterstützt: 1.1.6 16. Januar 2011
Ältere Version; nicht mehr unterstützt: 1.1.7 27. März 2011
Ältere Version; nicht mehr unterstützt: 1.1.8 26. Juni 2011
Ältere Version; nicht mehr unterstützt: 1.1.9 1. Januar 2012
Ältere Version; nicht mehr unterstützt: 1.1.10 12. Februar 2012
Ältere Version; nicht mehr unterstützt: 1.1.11 29. Juli 2012
Ältere Version; nicht mehr unterstützt: 1.1.12 19. August 2012
Ältere Version; nicht mehr unterstützt: 1.1.13 30. Dezember 2012
Ältere Version; nicht mehr unterstützt: 1.1.14 11. August 2013
Ältere Version; nicht mehr unterstützt: 1.1.15 29. Juni 2014
Ältere Version; nicht mehr unterstützt: 1.1.16 21. Dezember 2014
Ältere Version; nicht mehr unterstützt: 1.1.17 13. Januar 2016
Ältere Version; nicht mehr unterstützt: 1.1.18 19. April 2017
Ältere Version; nicht mehr unterstützt: 1.1.19 8. Juni 2017
Ältere Version; nicht mehr unterstützt: 1.1.20 6. Juli 2018
Ältere Version; nicht mehr unterstützt: 1.1.21 2. April 2019 31. Dezember 2019
Ältere Version; nicht mehr unterstützt: 1.1.22 17. Januar 2020 31. Dezember 2021
Ältere Version; nicht mehr unterstützt: 1.1.23 2. Dezember 2020
Ältere Version; nicht mehr unterstützt: 1.1.24 7. Juni 2021 31. Dezember 2023
Ältere Version; nicht mehr unterstützt: 1.1.25 13. Dezember 2021
Ältere Version; nicht mehr unterstützt: 1.1.26 30. September 2022
Ältere Version; nicht mehr unterstützt: 1.1.27 21. November 2022
Ältere Version; noch unterstützt: 1.1.28 23. Februar 2023 31. Dezember 2026
Aktuelle Version: 2.0 Ältere Version; nicht mehr unterstützt: 2.0.0 12. Oktober 2014 PHP 5.4 oder höher
Ältere Version; nicht mehr unterstützt: 2.0.1 7. Dezember 2014
Ältere Version; nicht mehr unterstützt: 2.0.2 11. Januar 2015
Ältere Version; nicht mehr unterstützt: 2.0.3 1. März 2015
Ältere Version; nicht mehr unterstützt: 2.0.4 10. Mai 2015
Ältere Version; nicht mehr unterstützt: 2.0.5 11. Juli 2015
Ältere Version; nicht mehr unterstützt: 2.0.6 5. August 2015
Ältere Version; nicht mehr unterstützt: 2.0.7 14. Februar 2016
Ältere Version; nicht mehr unterstützt: 2.0.8 28. April 2016
Ältere Version; nicht mehr unterstützt: 2.0.9 11. Juli 2016
Ältere Version; nicht mehr unterstützt: 2.0.10 20. Oktober 2016
Ältere Version; nicht mehr unterstützt: 2.0.11 1. Februar 2017
Ältere Version; nicht mehr unterstützt: 2.0.12 5. Juni 2017
Ältere Version; nicht mehr unterstützt: 2.0.13 3. November 2017
Ältere Version; nicht mehr unterstützt: 2.0.14 19. Februar 2018
Ältere Version; nicht mehr unterstützt: 2.0.15 20. März 2018
Ältere Version; nicht mehr unterstützt: 2.0.15.1 21. März 2018
Ältere Version; nicht mehr unterstützt: 2.0.16 30. Januar 2019
Ältere Version; nicht mehr unterstützt: 2.0.16.1 28. Februar 2019
Ältere Version; nicht mehr unterstützt: 2.0.17 22. März 2019
Ältere Version; nicht mehr unterstützt: 2.0.18 23. April 2019
Ältere Version; nicht mehr unterstützt: 2.0.19 21. Mai 2019
Ältere Version; nicht mehr unterstützt: 2.0.20 4. Juni 2019
Ältere Version; nicht mehr unterstützt: 2.0.21 18. Juni 2019
Ältere Version; nicht mehr unterstützt: 2.0.22 2. Juli 2019
Ältere Version; nicht mehr unterstützt: 2.0.23 16. Juli 2019
Ältere Version; nicht mehr unterstützt: 2.0.24 30. Juli 2019
Ältere Version; nicht mehr unterstützt: 2.0.25 13. August 2019
Ältere Version; nicht mehr unterstützt: 2.0.26 3. September 2019
Ältere Version; nicht mehr unterstützt: 2.0.27 18. September 2019
Ältere Version; nicht mehr unterstützt: 2.0.28 8. Oktober 2019
Ältere Version; nicht mehr unterstützt: 2.0.29 22. Oktober 2019
Ältere Version; nicht mehr unterstützt: 2.0.30 19. November 2019
Ältere Version; nicht mehr unterstützt: 2.0.31 18. Dezember 2019
Ältere Version; nicht mehr unterstützt: 2.0.32 22. Januar 2020
Ältere Version; nicht mehr unterstützt: 2.0.33 24. März 2020
Ältere Version; nicht mehr unterstützt: 2.0.34 26. März 2020
Ältere Version; nicht mehr unterstützt: 2.0.35 2. Mai 2020
Ältere Version; nicht mehr unterstützt: 2.0.36 8. Juli 2020
Ältere Version; nicht mehr unterstützt: 2.0.37 7. August 2020
Ältere Version; nicht mehr unterstützt: 2.0.38 14. September 2020
Ältere Version; nicht mehr unterstützt: 2.0.39 10. November 2020
Ältere Version; nicht mehr unterstützt: 2.0.40 23. Dezember 2020
Ältere Version; nicht mehr unterstützt: 2.0.41 3. März 2021
Ältere Version; nicht mehr unterstützt: 2.0.42 5. Mai 2021
Ältere Version; nicht mehr unterstützt: 2.0.43 9. August 2021
Ältere Version; nicht mehr unterstützt: 2.0.44 29. Dezember 2021
Ältere Version; nicht mehr unterstützt: 2.0.45 11. Februar 2022
Ältere Version; nicht mehr unterstützt: 2.0.46 18. August 2022
Ältere Version; nicht mehr unterstützt: 2.0.47 22. November 2022
Aktuelle Version: 2.0.48 22. Mai 2023
Zukünftige Version: 3.0 Zukünftige Version: 3.0 PHP 7.1 oder höher
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

Literatur

Bearbeiten
  • Mark Safronov, Jeffrey Winesett: Web Application Development with Yii 2 and PHP. Packt, Birmingham 2014, ISBN 978-1-78398-188-5 (englisch).
  • Alexander Makarov: Yii 1.1 Application Development Cookbook. Packt, Birmingham 2011, ISBN 978-1-84951-548-1 (englisch).
Bearbeiten

Einzelnachweise

Bearbeiten
  1. Introduction about Yii | The Definitive Guide to Yii 2.0. Abgerufen am 30. September 2018.
  2. a b Joseph Chao, Kevin Parker, Bill Davey: Navigating the Framework Jungle for Teaching Web Application Development. In: Proceedings of the Informing Science and Information Technology Education Conference 2013. Band 10, 1. Juli 2013, ISSN 1535-0703, S. 95–109.
  3. Lisa Lancor, Samyukta Katha: Analyzing PHP frameworks for use in a project-based software engineering course. In: ACM (Hrsg.): Proceeding of the 44th ACM technical symposium on Computer science education. 2013, ISBN 978-1-4503-1868-6, S. 519–524, doi:10.1145/2445196.2445350.