***** Ü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-Code Start ---

Überschrift

Danke.

"; ?> --- Code Ende --- include.txt: --- HTML-Code Start ---

Ich bin die include-Datei include.txt.

--- Code Ende --- 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-Code Start ---

Überschrift

Danke.

"; ?> --- Code Ende --- include.txt: --- HTML-Code Start --- Ich bin die include-Datei include.txt. --- Code Ende --- 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-Code Start ---

Überschrift

Danke.

"; ?> --- Code Ende --- include.php: --- PHP-Code Start --- "; } ?> --- Code Ende --- Was wird im Browser angezeigt? @@@ php_21-4) Dateien auslagern Gegeben sei folgendes Listing: --- PHP-Code Start --- "; 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):
--- Code Ende --- 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-Code Start --- 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() . "

"; ?> --- Code Ende --- 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.