Systembefehle per "symfony/process" ausführen
An vielen Stellen werden Systembefehle mit den nativen PHP Methoden exec
, shell_exec
, system
, etc. ausgeführt.
Das birgt Probleme/Nachteile in den folgenden Bereichen:
- Sicherheit
- Fehlerhandling
- Output Handling
- Timeouts
- Asynchronität
Als Entwickler muss man jedes Mal eigene Logik implementieren, um mit den nativen PHP Methoden einen dieser Bereiche nutzen zu können (bspw. Paramater escapen, Exit Codes prüfen, Output speichern).
Über die weit verbreitete und bereits in QUIQQER Systemen (durch andere Pakete) installierte Library symfony/process
wird einem die gesamte Arbeit abgenommen.
Für alle oben genannten Bereiche und Funktionen gibt es dort eine simple API.
Durch die Verwendung dieser Library kann der Code also vereinfacht und sicherer gemacht werden.