Composer ist ein Werkzeug zur Verwaltung von Abhängigkeiten in PHP-Projekten. Es liest die benötigten Bibliotheken und Versionsregeln aus der Datei composer.json, löst passende Paketversionen auf und installiert sie im Projekt. Zusätzlich erzeugt Composer einen Autoloader, über den PHP-Klassen aus den eingebundenen Paketen automatisch geladen werden können. Eine Agentur für Webentwicklung kann Composer-Konfigurationen, Updateprozesse und Sicherheitsprüfungen in einen reproduzierbaren PHP-Workflow integrieren.
composer install
composer.lockcomposer.json ermitteltcomposer update
composer.lock‑DateiWichtiger Unterschied
install = bestehenden Stand reproduzieren.update = neue Versionen einbeziehen und Lock‑Datei anpassen.composer.json beschreibt unter anderem Laufzeit- und Entwicklungsabhängigkeiten, Versionsbereiche, Autoloading und optionale Skripte.
composer.lock hält die konkret aufgelösten Versionen samt Prüfinformationen fest. Bei Anwendungen wird die Lock-Datei üblicherweise versioniert, damit Entwicklung, Tests und Produktion denselben Abhängigkeitsstand verwenden. Bibliotheken veröffentlichen dagegen vor allem ihre zulässigen Versionsbereiche.
Composer kann Pakete aus verschiedenen Quellen beziehen; Packagist ist das standardmäßig verwendete öffentliche Repository. Paketnamen folgen meist dem Schema hersteller/paket. Composer ist dabei kein systemweiter Paketmanager wie apt oder Homebrew, sondern verwaltet in erster Linie PHP-Abhängigkeiten eines Projekts. Auch private Repositories und lokal entwickelte Pakete lassen sich konfigurieren.
Abhängigkeiten sollten nur aus vertrauenswürdigen Quellen stammen und regelmäßig geprüft werden. Composer Audit kann bekannte Sicherheitsmeldungen zu installierten Paketen anzeigen. Updates gehören zunächst in eine kontrollierte Testumgebung, weil neue Versionen Verhalten ändern können. In der Produktion werden häufig Entwicklungsabhängigkeiten ausgelassen und optimierte Autoload-Dateien erzeugt.
Vorteile:
Grenzen:
Wir beraten Sie gerne und finden die perfekte Lösung für Sie. Lassen Sie sich von unseren Ideen inspirieren!
