readfile

(PHP 4, PHP 5, PHP 7, PHP 8)

readfileGibt eine Datei aus

Beschreibung

readfile(string $filename, bool $use_include_path = false, ?resource $context = null): int|false

Liest den Inhalt einer Datei und schreibt ihn in den Ausgabepuffer.

Parameter-Liste

filename

Der Name der Datei, die gelesen werden soll.

use_include_path

Sie können optional den zweiten Parameter benutzen und diesen auf true setzen, wenn Sie auch im include_path nach der Datei suchen möchten.

context

Eine Stream-Kontext-Ressource.

Rückgabewerte

Gibt bei Erfolg die Anzahl der gelesenen Bytes einer Datei zurück. Bei einem Fehler wird false zurückgegeben.

Fehler/Exceptions

Im Fehlerfall wird eine E_WARNING ausgegeben.

Beispiele

Beispiel #1 Einen Download unter Verwendung von readfile() erzwingen

<?php
$file 
'monkey.gif';

if (
file_exists($file)) {
    
header('Content-Description: File Transfer');
    
header('Content-Type: application/octet-stream');
    
header('Content-Disposition: attachment; filename="'.basename($file).'"');
    
header('Expires: 0');
    
header('Cache-Control: must-revalidate');
    
header('Pragma: public');
    
header('Content-Length: ' filesize($file));
    
readfile($file);
    exit;
}
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

Öffnen/Speichern-Dialog

Anmerkungen

Hinweis:

readfile() weist für sich allein keine Speicherprobleme auf, selbst wenn große Dateien gesendet werden. Wenn Sie auf einen out-of-memory-Fehler treffen, stellen Sie mit ob_get_level() sicher, dass die Ausgabepufferung deaktiviert ist.

Tipp

Wenn fopen wrappers aktiviert ist, kann mit dieser Funktion eine URL als Dateiname verwendet werden. Mehr Details dazu, wie der Dateiname angeben werden muss, sind bei fopen() zu finden. Eine Liste der unterstützten URL-Protokolle, die Fähigkeiten der verschiedenen Wrapper, Hinweise zu deren Verwendung und Informationen zu den eventuell vorhandenen vordefinierten Variablen sind unter Unterstützte Protokolle und Wrapper zu finden.

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Mitstreiter gesucht: On-Premise AI Analyzer (Symfony 8 + Ollama)

Hallo schrobak ich habe Ihren Beitrag über die Suche nach Fachleuten für moderne Architektur gelesen. Aufgrund meiner Erfahrung in der Backend- ...

Geschrieben von deepvyas am 07.09.2026 16:50:58
Forum: Jobangebote
Kalenderwoche auf Sonntag anfangen lassen

This German PHP developer forum thread addresses a technical programming query about adjusting calendar weeks to start on a Sunday rather than the ...

Geschrieben von olivianaylor am 07.09.2026 12:14:13
Forum: PHP Developer Forum
33winca

33win (https://33winca.com/) tự hào là điểm đến lý tưởng dành cho những ai đam mê trải nghiệm các trò chơi trực tuyế ...

Geschrieben von 33wincacomm am 07.09.2026 11:05:23
Forum: Provider / Domains
Seedance 2.5 – 30-Second Multimodal AI Video Generation with 50 References

Hi everyone, I’ve been testing Seedance 2.5 (https://seedance2-5.com/)recently and thought it was worth sharing for anyone following the devel ...

Geschrieben von Dorakim527 am 05.09.2026 17:24:10
Forum: SQL / Datenbanken