Der Trade-off einen Kommandozeilenaufruf zwischen der Verwendung und eine Bibliothek verwendet, ist Geschwindigkeit Ihrer Anwendung und Geschwindigkeit des Computers Ihre Anwendung läuft.
Jede Zeit machen Sie einen Kommandozeilenaufruf wie das, PHP, ein Verfahren zur Gabel hat (zwei tatsächlich, die Shell und dann der Befehl, den Sie ausführen möchten). Dies bedeutet, dass Ihr Computer eine andere Anwendung starten muss. Dies ist eine teure Sache, die viele Systemressourcen verschlingt. Denken Sie darüber nach, was passiert, wenn Sie (oder Ihr Startvorgang) versuchen, zu viele Programme gleichzeitig auf Ihrem Computer zu starten.
Wenn Sie eine Bibliothek verwenden, müssen keine Prozesse gespalten werden. PHP selbst erledigt die Arbeit, die andere Anwendungen tun würden.
Das heißt, ich habe eine Menge von Produktions-Web-Anwendungen, die mit dem Aufruf von Kommandozeilen-Anwendungen, die nicht verfügbar sind über PHP-Bibliotheken erhalten. Wenn es sich um einen wenig befahrenen Teil einer Anwendung oder um eine Seite handelt, die nicht oft genug getroffen wird, ist es möglich, dass Sie damit durchkommen, aber Sie kaufen sich eine Welt voller Schmerzen, wenn es Zeit für die Skalierung ist.
Es gibt auch Sicherheit zu berücksichtigen.Wenn Sie einen Befehl von PHP wie das ausführen, wenn Sie Variablen verwenden die Befehlsfolge aufzubauen, riskieren Sie so etwas wie
;rm -rf/
in Ihrem Befehl injiziert wird, was schlecht wäre (rm -rf/wird lösche dein gesamtes Dateisystem). Ja, Sie können Ihre Eingabevariablen umgehen, um damit umzugehen, aber fragen Sie jeden erfahrenen PHP-Entwickler, wie Hand-Escape-SQL-Abfragen ausgearbeitet werden.
Also, kurz gesagt, Sie können wahrscheinlich damit durchkommen, aber es ist keine Best Practice und Sie kaufen sich eine Last von Schmerzen in der Zukunft, wenn das S --- den Fan trifft.