{"id":579075,"date":"2025-07-07T05:06:27","date_gmt":"2025-07-07T04:06:27","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=blog&#038;p=579075"},"modified":"2025-07-07T05:06:34","modified_gmt":"2025-07-07T04:06:34","slug":"so-hilft-phpstorm-bei-der-wartung-von-php-open-source-projekten-interviews-und-beispiele-aus-der-praxis","status":"publish","type":"blog","link":"https:\/\/blog.jetbrains.com\/de\/blog\/2025\/07\/07\/so-hilft-phpstorm-bei-der-wartung-von-php-open-source-projekten-interviews-und-beispiele-aus-der-praxis\/","title":{"rendered":"So hilft PhpStorm bei der Wartung von PHP-Open-Source-Projekten: Interviews und Beispiele aus der Praxis"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"2560\" height=\"1440\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/07\/PS-social-BlogFeatured-1280x720-2x.png\" alt=\"\" class=\"wp-image-568886\"\/><\/figure>\n\n\n\n<p>Das PHP-\u00d6kosystem wird von leidenschaftlichen Entwickler*innen vorangetrieben, deren Tools bei allen Arten von Software zum Einsatz kommen \u2013 von Content-Management-Systemen bis hin zu Testbibliotheken und Datenbankschichten. Hinter jedem Projekt steht ein engagiertes Team, das sich daf\u00fcr einsetzt, den Code zu modernisieren, die Performance zu verbessern und das \u00d6kosystem weiterzuentwickeln.<\/p>\n\n\n\n<p>Die Tatsache, dass viele dieser Teams sich bei ihrer Arbeit f\u00fcr <a href=\"https:\/\/www.jetbrains.com\/de-de\/phpstorm\/\" target=\"_blank\" rel=\"noopener\">PhpStorm<\/a> entscheiden, erf\u00fcllt uns bei JetBrains mit Stolz und ist ein Beweis f\u00fcr den positiven Einfluss unseres <a href=\"https:\/\/www.jetbrains.com\/de-de\/phpstorm\/buy\/?section=discounts&amp;billing=yearly\" target=\"_blank\" rel=\"noopener\">Open-Source-Programms f\u00fcr kostenlose und verg\u00fcnstigte Lizenzen<\/a> auf die gesamte PHP-Community. Dieser Artikel stellt herausragende PHP-Projekte und die Menschen dahinter vor. Ganz gleich, ob es um das Debuggen komplexer Systeme oder die Wartung von Testsuiten geht \u2013 PhpStorm vereinfacht die Arbeitsabl\u00e4ufe, reduziert die Reibungsverluste und schafft mehr Zeit f\u00fcr das Wesentliche \u2013 die eigentliche Entwicklung.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">PHPUnit<\/h2>\n\n\n\n<p><a href=\"https:\/\/sebastian-bergmann.de\/index.html\" target=\"_blank\" rel=\"noopener\">Sebastian Bergmann<\/a> begann die Arbeit an <a href=\"https:\/\/github.com\/sebastianbergmann\/phpunit\/\" target=\"_blank\" rel=\"noopener\">PHPUnit<\/a> als Hochschulprojekt, ausgel\u00f6st durch eine Diskussion mit einem Professor, der die Ansicht vertrat, dass ein Tool wie JUnit nicht in PHP umgesetzt werden k\u00f6nne. Inzwischen ist PHPUnit seit \u00fcber zwei Jahrzehnten das R\u00fcckgrat des PHP-Testens und hat die Art und Weise gepr\u00e4gt, wie PHP-Entwickler*innen Tests schreiben und pflegen. Es ist nach wie vor das Testframework der Wahl f\u00fcr PHP-Projekte aller Gr\u00f6\u00dfen.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>Ich habe jede PHP-IDE ausprobiert, bis ich PhpStorm in die H\u00e4nde bekam \u2013 die erste IDE, die meine Produktivit\u00e4t steigerte statt bremste. Ich f\u00fchlte mich sofort wie zu Hause. Ich kann mir nicht mehr vorstellen, ohne die Codenavigation und die Refactoring-Tools der IDE zu arbeiten.<\/p>\n<cite><em>\u2013 Sebastian Bergmann, Sch\u00f6pfer von PHPUnit<\/em><\/cite><\/blockquote>\n\n\n\n<p>Beim neuesten Release, PHPUnit 12, liegt der Schwerpunkt auf der Klarheit des Codes. Eine wesentliche Verbesserung ist die klare Unterscheidung zwischen Test-Stubs und Mock-Objekten durch eigene APIs. Diese Architektur\u00e4nderung vereinfacht die Wartung und die Lesbarkeit von Testcode.<\/p>\n\n\n\n<p>In Zukunft wird PHPUnit das Open-Test-Reporting-Format unterst\u00fctzen \u2013 eine moderne, erweiterbare Alternative zu JUnit XML. Die Erstunterst\u00fctzung ist f\u00fcr PHPUnit 12.2 (Juni 2025) geplant, wobei JUnit XML in PHPUnit 13 als veraltet gekennzeichnet und in PHPUnit 14 entfernt wird.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Doctrine DBAL<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/doctrine\/dbal\" target=\"_blank\" rel=\"noopener\">Doctrine DBAL<\/a> ist eine verbreitete Datenbank-Abstraktionsschicht, die PHP-Entwickler*innen eine portable, objektorientierte API f\u00fcr die Interaktion mit SQL-Datenbanken bietet. Es unterst\u00fctzt eine Vielzahl von Anwendungen und Frameworks im PHP-\u00d6kosystem.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>Ich verwende PhpStorm t\u00e4glich, um PHPUnit-Tests lokal in verschiedenen Konfigurationen auszuf\u00fchren, mit unterschiedlichen Datenbanken zu interagieren, Docker-Container zu verwalten und statische Analysen durchzuf\u00fchren.<\/p>\n<cite><em>\u2013 Sergei Morozov, Maintainer von Doctrine DBAL<\/em><\/cite><\/blockquote>\n\n\n\n<p>Das Projekt ist zwar ausgereift und stellt die meisten wichtigen Funktionen bereit, aber die laufenden Arbeiten umfassen eine grundlegende \u00dcberarbeitung des Schema-Managements, das Angehen der Einschr\u00e4nkungen der urspr\u00fcnglichen Architektur und eine verbesserte Unterst\u00fctzung f\u00fcr sich entwickelnde SQL-Standards und Datenbankplattformen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">CodeIgniter<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/codeigniter4\/CodeIgniter4\" target=\"_blank\" rel=\"noopener\">CodeIgniter<\/a> wurde als leichtgewichtiges, leistungsstarkes PHP-Framework entwickelt, bei dem Einfachheit und Entwicklungsfreiheit im Vordergrund stehen. Es gibt Entwickler*innen die M\u00f6glichkeit, ohne starre Konventionen nach ihren eigenen Vorstellungen zu arbeiten \u2013 eine Grundphilosophie, die nach wie vor den Reiz des Frameworks ausmacht.<\/p>\n\n\n\n<p>CodeIgniter v4 bleibt den Grundprinzipien der Vorg\u00e4ngerversion treu und setzt gleichzeitig auf moderne Entwicklungsmethoden, etwa robuste Tests und Integration mit Tools wie PHPStan, Psalm und Rector.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>Eine der Hauptst\u00e4rken von CodeIgniter v4 ist die Befolgung von PHP-Best-Practices, sodass PhpStorm ohne zus\u00e4tzliche Plugins problemlos damit funktioniert. Die IDE versteht ohne Weiteres die Codemuster und Konventionen von CodeIgniter und bietet eine intelligente Code-Completion, die die Entwicklung vereinfacht. Diese eingebaute Kompatibilit\u00e4t bietet unseren Mitwirkenden eine au\u00dfergew\u00f6hnlich produktive Erfahrung.<\/p>\n<cite><em>\u2013 Matt Gatner, CodeIgniter-Mitwirkender<\/em><\/cite><\/blockquote>\n\n\n\n<p>Das Team entwickelt CI4 kontinuierlich weiter, mit einem Fokus auf Leistung, Modularit\u00e4t und eine reibungslose Entwicklungserfahrung. Die n\u00e4chsten Releases sollen die Task- und Queue-Pakete in den stabilen Status \u00fcberf\u00fchren, die modulare Paketbibliothek erweitern, die Kompatibilit\u00e4t mit den neuesten PHP-Versionen verbessern \u2013 und dabei der urspr\u00fcnglichen Vision des Projekts treu bleiben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Joomla!<\/h2>\n\n\n\n<p><a href=\"https:\/\/github.com\/joomla\/joomla-cms\" target=\"_blank\" rel=\"noopener\">Joomla!<\/a> ist ein leistungsstarkes quelloffenes Content-Management-System, das von einer weltweiten Gemeinschaft von Freiwilligen gepflegt wird. Die Mission des Projekts ist die Bereitstellung einer mehrsprachigen, flexiblen und sicheren Plattform, die es Einzelpersonen, kleinen Unternehmen und gemeinn\u00fctzigen Organisationen erm\u00f6glicht, Inhalte online zu stellen und zusammenzuarbeiten \u2013 und zwar ohne die von anderen Systemen gewohnte steile Lernkurve.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>Der statische Code-Analyzer von PhpStorm hat mir geholfen, Dokumentationsbl\u00f6cke zu bereinigen und das Framework besser zu verwalten. Er kennt Joomla in- und auswendig, sodass die Entwicklung reibungsloser verl\u00e4uft.<\/p>\n<cite>\u2013 <em>Hannes Papenberg, <em>Joomla-Maintainer<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm zeigt mir, wie die Dateien miteinander zusammenh\u00e4ngen, erkennt Syntaxfehler fr\u00fchzeitig und erm\u00f6glicht es mir, mich auf die eigentlichen Kundenbed\u00fcrfnisse zu konzentrieren. Dies verschafft mir einen enormen Vorteil gegen\u00fcber anderen Webentwickler*innen, die den Wert der IDE f\u00fcr ihre t\u00e4glichen Abl\u00e4ufe nicht erkennen.<\/p>\n<cite>\u2013 <em>Adam Melcher, <em>Joomla-Mitwirkender<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p>PhpStorm hat mir als Core-Entwickler von Joomla sehr vielf\u00e4ltig geholfen. Der Step-Debugger, den ich so gut wie jeden Tag benutze, hilft mir, Fehler aufzusp\u00fcren und Codeabl\u00e4ufe zu verstehen, und ganz grunds\u00e4tzlich ist es sehr hilfreich zu sehen, was unter der Haube passiert. Das Joomla-Plugin f\u00fcgt eine zus\u00e4tzliche Usability-Ebene hinzu, da es den Codebestand von Joomla kennt und das Navigieren im Code wesentlich erleichtert.<\/p>\n<cite>\u2013 <em>Roland Dalmulder, <em>Joomla-Mitwirkender<\/em><\/em><\/cite><\/blockquote>\n\n\n\n<p>Die Ver\u00f6ffentlichung von <a href=\"https:\/\/magazine.joomla.org\/all-issues\/july-2024\/joomla-6,-what-s-in-it-for-you\" target=\"_blank\" rel=\"noopener\">Joomla 6<\/a> ist f\u00fcr den 14. Oktober 2025 geplant. Die neue Version setzt die Modernisierung des Codebestands fort, verbessert die SEO-Tools und bringt einen eingebauten Health-Checker mit. Damit verfolgt Joomla weiterhin die Mission, das Publizieren im Web inklusiver und flexibler zu gestalten.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>Diese Projekte stellen nur einen kleinen Teil der weltweiten Open-Source-Aktivit\u00e4ten dar \u2013 aber sie repr\u00e4sentieren die Werte, die wir am meisten bewundern: Neugier, handwerkliches K\u00f6nnen und Engagement f\u00fcr die Entwicklungscommunity.<\/p>\n\n\n\n<p>Auch wenn jedes Projekt seinen eigenen Schwerpunkt hat, so sind sie doch alle auf verl\u00e4ssliche, leistungsf\u00e4hige Arbeitsabl\u00e4ufe angewiesen, um hohe Standards einzuhalten und Klarheit f\u00fcr die weitere Entwicklung zu haben \u2013 und JetBrains ist stolz darauf, sie in diesem Bestreben zu unterst\u00fctzen. Wenn Sie Open-Source-Entwickler*in sind, k\u00f6nnen Sie m\u00f6glicherweise eine kostenlose oder erm\u00e4\u00dfigte PhpStorm-Lizenz erhalten \u2013 <a href=\"https:\/\/blog.jetbrains.com\/phpstorm\/2024\/01\/free-and-discounted-licenses-for-phpstorm-who-is-eligible\/\">informieren Sie sich<\/a> \u00fcber die verf\u00fcgbaren Optionen, um zu sehen, ob Sie f\u00fcr diese Lizenzen qualifiziert sind.<\/p>\n\n\n\n<p>Au\u00dferdem freuen wir uns, die Leidenschaft und die Fortschritte der PHP-Community bei der <a href=\"https:\/\/lp.jetbrains.com\/phpverse-2025\/\" target=\"_blank\" rel=\"noopener\">PHPverse 2025<\/a> zu feiern. Bei diesem kostenlosen Online-Event am 17. Juni 2025 werden die einflussreichsten Mitwirkenden der PHP-Community ihre Erkenntnisse \u00fcber die Entwicklung und die Zukunft der Sprache mit uns teilen. Freuen Sie sich auf inspirierende Vortr\u00e4ge, Diskussionen, Fragerunden \u2013 und ein spezielles PHP-Jubil\u00e4umsgeschenk.<\/p>\n\n\n    <div class=\"buttons\">\n        <div class=\"buttons__row\">\n                                                <a href=\"https:\/\/lp.jetbrains.com\/phpverse-2025\/\" class=\"btn\" target=\"\" rel=\"noopener\">Sign Up for Free<\/a>\n                                                    <\/div>\n    <\/div>\n\n\n\n\n\n\n<p><strong>Autorin des urspr\u00fcnglichen Blogposts<\/strong><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/05\/av_IMG_5504.jpeg\" width=\"200\" height=\"200\" alt=\"Lena Morozova\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                            <h4>Lena Morozova<\/h4>\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":579091,"comment_status":"closed","ping_status":"closed","template":"","categories":[942],"tags":[104,560,8772,8777],"cross-post-tag":[6637],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/blog\/579075"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/comments?post=579075"}],"version-history":[{"count":4,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/blog\/579075\/revisions"}],"predecessor-version":[{"id":579115,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/blog\/579075\/revisions\/579115"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/media\/579091"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/media?parent=579075"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/categories?post=579075"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/tags?post=579075"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/de\/wp-json\/wp\/v2\/cross-post-tag?post=579075"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}