.:: NAVIGATION ::.
 A Einleitung  

.:: INFO ::.

.:: user ::.
Username:
Password:
--> registrieren <--


765 registrierte Benutzer

SCHULE.AT

MySQL

PHP

Wie komme ich zu einem Lehrer-Account?

Zuerst registrieren, anschließend Mail an ingolacheiner.net mit Namen, gültiger e-mail-Adresse, Username, Passwort und Schulkennzahl

 

·:: Zurück  weiter ::·
.:: F Arrays ::.

Arrays sollten dir aus anderen Programmiersprachen bereits bekannt sein. Einfach ausgedrückt sind es Variablen in denen mehrer Werte gespeichert werden können.

$array = array("Inhalt 1", "Inhalt 2", "Inhalt 3");

Mit der Funktion array() definierst du ein Array.

Um einzelne Werte aus dem Array auszulesen gehst du wie folgt vor:

$ein_array = array("Inhalt 1", "Inhalt 2", "Inhalt 3");
echo $ein_array[0];

Dieses Script gibt "Inhalt 1" aus. Wir haben keine Schlüssel angegeben, daher hat PHP selbst Schlüssel erstellt. PHP beginnt dabei mit dem Schlüssel [0]. Du kannst natürlich die Schlüssel auch selbst benennen:

$ein_array[1] = "zweiter Wert";
$ein_array[2] = "dritter Wert";
$ein_array[0] = "erster Wert";

Übung F1

Ein numerisches Array soll folgende Inhalten haben:
Führerschein, Auto,Berechtigung, 18,

1. Erstelle dieses Array
2. Erstelle diese Ausgabe (fett geschrieben bedeutet: aus Array auslesen):

Das 3. Element des Arrays ist vom Typ: string
Wenn man über 18 ist und einen Führerschein besitzt, hat man die Berechtigung ein Auto zu lenken!

Du benötigst
gettype() - siehe Datentypen

Lösung

Assoziative Arrays

Anstatt Arrays mit Nummern zu indizieren, kannst du auch Wörter als Schlüssel benutzen. Arrays mit Zeichenketten als Schlüssel nennt man assoziative Arrays. Beispiel:

$array = array("führerschein"=>"ja",
                    "alter"=> 22 );
echo $array["alter"];

Um nicht jeden Wert mit seinem Schlüssel auslesen zu müssen kann man die foreach()-Schleife verweden.

foreach($array as $wert)
{
... PHP-Code ...
}

Komplettes Beispiel für foreach():

<?php
$obst 
= array("Apfel""Birne""Banane""Kirsche");
foreach(
$obst as $wert)
echo 
"$wert<br>";
?>

Ausgabe im Browser:

Wichtige Array-Funktionen

Um die Anzahl der Werte in einem Array zu zählen verwendet man count().

<?
$anzahl 
count($obst);
?>

Der Rückgabewert würde in unserem Fall 4 ergeben, da sich vier Werte im Array befinden.

Um zu überprüfen ob ein Wert bereits im Array vorkommt verwendet man in_array().

<?
if(in_array("Apfel",$obst))
{
echo 
"Apfel ist im Array enthalten.";
}
?>

Befindet sich der Wert "Apfel" im Array $obst gibt die if-Abfrage TRUE zurück und der Text wird ausgegeben..

Um einen neuen Wert in ein Array zu schreiben verwendet man array_push().

<?
array_push
($obst,"Pflaume","Orange");
?>

In das Array $obst wurden nun die Werte Pflaume und Orange geschrieben.

Sortierfunktionen

Feldnamen sortieren:
ksort() (a,b,c,d) oder
krsort()
(d,c,b,a)

<?
ksort
($obst);
?>

Werte sortieren
asort() und
arsort()

<?
asort
($obst);
?>

Übung F2

Erstelle ein Array mit mindestens 10 Elementen
gib dieses Array zuerst unsortiert und anschließend sortiert aus:

Bsp:
Hans Fritz Daniel Manuel Armin Xaver Peter
Armin Daniel Fritz Hans Manuel Peter Xaver

Lösung

 

Weitere Arrayfunktionen

Funktion Beispiel Beschreibung
array_count_values() $arr = array_count_values($liste); zählt die Häufigkeit des Auftretens aller Elemente und gibt das Ergebnis in einem Array wieder
array_keys() $arr = array_keys($liste) gibt alle Schlüsselwörter eines assoziativen Arrays in einem weiteren Array wieder
array_values() $arr = array_values($liste) gibt alle Elemente eines assoziativen Arrays in einem weiteren Array wieder
array_reverse() $arr = array_reverse($liste) dreht ein Array um
in_array() $bool = in_array($wert, $array) gibt TRUE zurück, wenn der Wert im Array vorkommt
implode()

$str = implode("§§", $liste)

§§ = Trennzeichen

verbindet alle Arrayelemente zu einem String, in dem sie durch Trennzeichen unterteilt sind
explode() $arr = explode("§§", $str); zerlegt einen String an bestimmten Trennzeichen und gibt das Ergebnis als Array zurück
range() $arr = range(1, 100); erstellt ein Array als integer-Zahlen. Anfangs- und Endwert werden als Parameter übergeben
shuffle() shuffle($liste); mischt die Elemente zufällig durch
array_merge() $arr = array_merge($liste1, $liste2); verbindet zwei Arrays zu einem Neuen

Übung F3

Erstelle ein Array mit mindestens 10 Einträgen und setze es zu einem String (mittels implode()) zusammen. Gib diesen String aus.

Erstelle einen String mit mindestens 10 Wörtern und schreibe diese 10 Wörter mittels explode() in ein Array. Gib dieses Array aus.

Lösung

 

Der Arrayzeiger

Wie in Textdateien der Cursor funktioniert der Arrayzeiger in Arrays. Man kann zum Beispiel den Arrayzeiger zu einem bestimmten Schlüssel springen lassen und die Werte bearbeiten, auslesen, löschen, ...

Standardmäßig steht dieser Zeiger beim ersten Schlüssel (im numerischen Array bei 0). Mit verschiedenen Funktionen kann dieser Zeiger bewegt werden.

Funktion Beschreibung
current() gibt das Element aus einem Array zurück, auf das der Arrayzeiger zeigt
each() gibt das nächste Schlüssel-Wert-Paar eines assoziativen Arrays zurück
reset() setzt den Arrayzeiger auf das erste Element des Arrays
end() setzt den Arrayzeiger auf das letzte Element des Arrays
key() gibt den aktuellen Schlüssel des Elements wieder
next() setzt den Zeiger um ein Element weiter vor
prev() setzt den Zeiger um ein Element weiter zurück

<?php
$liste 
= array(
"Martin""Armin""Xaver""Peter""Daniel""Manuel""Klaus"
"Patrick""Clemens""Christoph""Dominik");
echo 
current($liste);
next($liste); 
echo 
"<br>";
echo 
current($liste);
end($liste); 
echo 
"<br>";
echo 
current($liste);
reset($liste);
echo 
"<br>";
echo 
current($liste);
?>

 

Übung F4

Folgende Ausgabe soll mittels PHP realisiert werden:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121

41 43 27 92 35 52 80 7 20 96 83 82 17 86 79 75 15 24 64 119 59 98 26 81 25 22 45 14 28 4 100 91 36 117 9 68 93 62 56 2 33 72 115 50 85 90 108 47 61 37 49 63 110 58 97 55 40 6 118 54 73 88 112 18 77 38 109 121 12 95 34 99 76 32 78 51 104 111 105 65 120 74 31 116 5 11 87 46 70 21 29 16 8 23 44 101 84 67 10 94 106 60 113 13 102 53 103 42 66 48 1 57 39 107 19 89 69 3 71 114 30

Verwende dazu folgende Funktionen:
shuffle()
implode()
range()

Lösung



·:: Zurück  weiter ::·

   


© 2005 unter OPL
ingolacheiner.net