Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 Markdown to HTML
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog‑Verzeichnis

Partner
 Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
https://www.Artfiles.de
Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
https://www.Hosterplus.de
 
 
 

Datei ausgeben

Sie befinden sich: Home > Php Tutorial > Datei ausgeben

Datei ausgeben


Eintrag am:  26.09.2010
Hits / Besucher:  11147
Sprache:  Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
Eingetragen von   schubertmedia schubertmedia
 
Beschreibung

Für Webdesigner, vor allem in größeren Projekten, ist es oft sehr lästig, wenn gewisse Codestücke (zum Beispiel Header oder Footer) in jeder neuen HTML-Datei von Hand eingefügt oder neu abgetippt werden müssen. Es gibt zwar in Tools wie Adobe Dreamweaver die Möglichkeit, Templates zu benützen, in denen manche Code-Abschnitte bei jeder neuen Seite gleich sind, jedoch haben nicht alle Webdesigner und Webprogrammierer Zugriff auf solche Profi-Tools.

Hier schafft die PHP-Funktion readfile() Abhilfe. Diese nützliche Funktion liest den HTML-Code aus einer Datei aus und fügt ihn unverändert in derjenigen PHP- oder HTML-Datei ein, in der die Funktion aufgerufen wurde. So lassen sich ganze Seiten oder einzelne Abschnitte aus Dateien in einer neuen Datei ausgeben. Die genaue Erklärung des PHP-Codes, der diesen Zweck erfüllt, ist der Sinn dieses Tutorials.

Den Syntax und die Verwendung der Funktion readfile() sehen Sie am folgenden Beispiel:

<?php

    $datei_inhalt 
'';

    
ob_start();

    
readfile('./datei.html');

    
$datei_inhalt ob_get_contents();

    
ob_end_clean();

    echo 
$datei_inhalt;

?>

Erklärung des Beispiels:

Zu Anfang wird eine Variable $datei_inhalt definiert, zunächst nur aus einem leeren String besteht. In diese Variable wird später der Inhalt der eingelesenen Datei geschrieben. Um nicht den gesamten Inhalt der Datei auf einmal im Browser auszugeben und damit vielleicht zu Fehlern zu führen, wird als nächster Schritt mit der Funktion ob_start() ein interner Ausgabe-Puffer aktiviert, in dem der Inhalt der Datei zunächst gesammelt wird.

In der nächsten Zeile wird nun die eigentliche Funktion readfile() aufgerufen. Ihr Parameter ist der realtive Pfad der HTML-Datei, die ausgelesen werden soll. Der Inhalt der Datei wird somit in den Ausgabepuffer geschrieben. Um den Inhalt verfügbar zu machen und in unsere Variable $datei_inhalt zu schreiben, wird als nächstes der Inhalt des Puffers mit der Funktion ob_get_contents() auf die Variable zugewiesen.

Somit ist der Inhalt der eingelesenen Datei ein String, auf den über die Variable $datei_inhalt zugegriffen werden kann. Es bleibt nur noch, den Ausgabepuffer mit ob_end_clean() zu leeren und den Inhalt der Variable $datei_inhalt mittels echo auszugeben.

Ergebnis dieses Codes:

Steht in der eingelesenen Datei datei.html zum Beispiel ein div-Element mit dem Inhalt "Dies ist ein DIV-Element", so zeigt der Browser diese Datei so an: "Dies ist ein DIV-Element".
Nach dem Auslesen der Datei in eine andere Datei, so zeigt der Browser als Inhalt der zweiten Datei ebenfalls "Dies ist ein DIV-Element".

Hoffentlich ist dieses Tutorial Ihnen von Nutzen und bringt Ihnen die Funktionsweise der Funktion readfile() näher. Sollten Sie noch fragen zu der Funktion readfile() haben, so nutzen Sie unser Support Forum.

 

Tags:

 

Artikel hinzufügen bei:
         
Bücherregal mit drei Büchern: 'PHP 4 - Grundlagen und Profiwissen' von Hanser Verlag, 'Webdesign in a Nutshell' von O'Reilly Verlag, und 'Webgestaltung' von Galileo Computing.