Hello,
$error = download_file ('testdatei.txt');
als Beweis dafür, dass die Fehlermeldung von readfile() wirklich eingefangen wird:
echo "Fehlermeldung: $error ENDE";
Solche Konstrukte halte ich für sehr unglücklich. download_file() beendet eigenständig die Verarbeitung, dass ist an zitierter Stelle nicht erkenntlich. Das ist natürlich eine Stilfrage, nicht der Funktionalität.
Das geht hier aber im Client-Server-Dialog nicht anders umd MUSS SO SEIN, dass keine weiteren Ausgaben mehr folgen.
Wenn im Script noch Dinge erledigt werden sollen, sollte man diese in die Shutdown-Funktion verlegen.
Das ist die von PHP im Rahmenprogramm vorgesehene Funktion.
Anders wird es echt kompliziert und unübrschaubar und man würde dem vorhandenen PHP-Rahmenwerk nochmals einen Rahmen einbauen...
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg