# Übungen: Einbinden von Dateien mittels include() und require() Quelle: https://www.informatikzentrale.de/php-include-require.html ## Übungen: Dateien mit require/include einbinden php_21-1) Was zeigt der Browser an? Gegeben sei eine Datei "test.php" und eine Datei "include.txt": test.php: ```php

Überschrift

Danke.

"; ?> ``` include.txt: ```html

Ich bin die include-Datei include.txt.

``` Was wird im Browser angezeigt? --- php_21-2) Was zeigt der Browser an? Gegeben sei eine Datei "test.php" und eine Datei "include.txt": test.php: ```php

Überschrift

Danke.

"; ?> ``` include.txt: ```html Ich bin die include-Datei include.txt. ``` Was wird im Browser angezeigt? --- php_21-3) Was zeigt der Browser an? Gegeben sei eine Datei "test.php" und eine Datei "include.php": test.php: ```php

Überschrift

Danke.

"; ?> ``` include.php: ```php "; } ?> ``` Was wird im Browser angezeigt? --- php_21-4) Dateien auslagern Gegeben sei folgendes Listing: ```php "; for ($a=1;$a<=6;$a++) { echo $a . "." . $msg1; } // Anweisungsblock 1 Ende break; case 'Widder': // Anweisungsblock 2 Start echo "Sie sind ein Widder. Als Widder gefallen Ihnen die ungeraden Zahlen. Bitteschön:
"; for ($a=1;$a<100;$a=$a+2) { echo $a . " "; } // Anweisungsblock 2 Ende break; case 'Elefant': // Anweisungsblock 3 Start echo "Es gibt kein Sternzeichen \"Elefant\"!!!"; // Anweisungsblock 3 Ende break; default: echo "Bitte geben Sie eines der vorgegebenen Sternzeichen ein."; } } ?>
Geben Sie hier Ihr Sternzeichen ein (Steinbock, Widder, Elefant):
``` Lagern Sie die drei Anweisungsblöcke in der switch-Verzweigung in drei verschiedene Dateien aus. --- php_21-5) Klassen auslagern Gegeben sei folgendes Listing: ```php Startdatei

Hier findet Klassen-Action statt.

zufallszahl = rand(0, (count($this->sprueche) - 1)); echo "

Ich bin der Konstruktor der Klasse etwasAusgeben.
Ich habe eine Zufallszahl gewuerfelt, naemlich " . $this->zufallszahl . "

"; } // Methoden public function getZufallszahl() { return $this->zufallszahl; } public function erzeugeZufaelligenSpruch() { return $this->sprueche[$this->zufallszahl]; // alternativ: return $this->sprueche[$this->getZufallszahl()]; } public function spruchAusgeben() { echo $this->erzeugeZufaelligenSpruch(); } } class ueberschriftErzeugen { // Attribute private $text; private $zahl; // Konstruktor function __construct($eineZahl) { if($eineZahl<2) { exit("zahl muss 2 oder groesser sein"); } else { $this->zahl = $eineZahl; } } // Methoden public function zahlenReiheErzeugen() { $ausgabe = ''; for($i=1;$i<=$this->zahl;$i++) { $ausgabe .= $i; } return $ausgabe; } public function ueberschriftKomplettErzeugen() { $ersterteil = "Zahlenkolonnenüberschrift Nummer "; $zweiterteil = $this->zahlenReiheErzeugen(); return $ersterteil . $zweiterteil; } } $spruchgenerator = new etwasAusgeben(); $spruchgenerator->spruchAusgeben(); echo "
"; $ueberschrift = new ueberschriftErzeugen(12); echo "

" . $ueberschrift->ueberschriftKomplettErzeugen() . "

"; ?> ``` a) Versuchen Sie zu verstehen, was das Skript macht. b) Überprüfen Sie, ob das Skript funktioniert. c) Lagern Sie die Klassen aus (zahlenreihe.class.php und spruch.class.php) und binden Sie sie mit require_once() ein. Überprüfen Sie, ob das Skript weiterhin läuft.