Ich habe eine PHP-Skript-Befehlszeile, die mit Dateiausgabe verwendet werden sollte, zum Beispiel:PHP Force Command Line Output
php script.php -arg > file.txt
Angenommen, ich habe einen Fehler/Ausnahme in dieser Datei. Ich kann es entweder uncaught (mit oder ohne throw
) lassen, und es wird etwas hässlich, dass ich nicht auf die Befehlszeile ausgeben möchte, oder ich kann es fangen, und dann wird jede Ausgabe an file.txt
gehen, und der Benutzer gewann Ich sehe es nicht sofort.
Gibt es eine Möglichkeit, um sicher zu zwingen, Ausgabe an die Befehlszeile zu gehen, ohne zu beeinflussen, was der Rest des Skripts in die Datei schreibt?
Fangen Sie die Ausnahme und schreiben Sie die Fehlermeldung auf [ 'stderr'] (http://php.net/manual/en/features. commandline.io-streams.php). Es wird auf dem Bildschirm angezeigt, weil Sie nur 'stdout' umgeleitet haben. – axiac
Danke, es hat funktioniert. Ich war mir dieser Möglichkeiten nicht bewusst. Wenn du es als Antwort postest, werde ich akzeptieren. – Ynhockey