SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=69&group=20&page=2
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


Ausdrücke


Sollte man PHP mit einem Satz charakterisieren wollen, könnte man sagen, dass es sich um eine ausdrucksorientierte Sprache handelt.

Damit stellt sich gleich zu Begin die Frage, was denn ein Ausdruck ist. Ein Ausdruck ist ganz allgemein eine Aneinanderreihung von Zeichen unter Beachtung einer vorgegebenen Syntax. Ausdrücke können ganz unterschiedlich aufgebaut sein. Das wichtigste Charakteristikum von Ausdrücken ist, dass sie immer einen Wert – und sei es den Wert 0 oder "" (leerer String) – besitzen. Ausdrücke stellen somit die wichtigsten Komponenten von PHP dar.


Elementare Ausdrücke

Der folgende Ausdruck ist im vorstehenden Sinne ein gültiger, elementarer PHP-Ausdruck.

1000

Es handelt sich um eine Integer-Konstante mit dem Wert 1000. Weitere elementare Ausdrücke sind beispielsweise Konstanten und Variablen.


Zusammengesetzte Ausdrücke

Zusammengesetzte Ausdrücke entstehen dadurch, dass elementare Ausdrücke mithilfe von Operatoren verknüpft oder dass Werte von Ausdrücken mithilfe von Zuweisungsoperatoren anderen Ausdrücken zugewiesen werden.

In der folgenden Anweisung wird dem Ausdruck $zahl der Ausdruck 1000, d. h. eine Integer-Konstante mit dem Wert 1000 zugewiesen.

$zahl = 1000;

Nach dieser Zuweisung ist der Wert von $zahl ebenfalls 1000. Somit sind hier zwei Werte im Spiel:

In der folgenden Anweisung wird dem Ausdruck $punkte der Ausdruck $zahl zugewiesen.

$punkte = $zahl;

Der gesamte Ausdruck, also $punkte = $zahl, hat aufgrund des vorhergehenden Ausdrucks nun den Wert 1000. $punkte ist also ebenfalls ein Ausdruck mit dem Wert 1000. Der Ausdruck $punkte = $zahl ist dabei gleichbedeutend mit dem Ausdruck $punkte = $zahl = 1000.

Funktionen als Ausdrücke

Ein weiteres Beispiel für Ausdrücke sind Funktionen. Funktionen sind ebenfalls Ausdrücke mit dem Wert ihres Rückgabewerts. Die folgende Funktion wert() ist also ein Ausdruck mit dem Wert 1000.

<?php
function wert() {
  return 1000;
}
// Ausgabe (1000)
echo wert();
?>

Bei dem zusammengesetzten Ausdruck

$resultat = wert();

handelt es sich somit ebenfalls um einen Ausdruck mit dem Wert 1000.


Prä- und Post-Inkrement in Ausdrücken

Komplexere Ausdrücke in PHP verwenden die von der Sprache C bekannten Prä- und Post-Inkremente sowie die entsprechenden Dekremente.

Sowohl Prä-Inkremente als auch Post-Inkremente erhöhen den Wert einer Variablen. Der Unterschied besteht im Wert des Inkrement-Ausdrucks:
{PSP}Beispiel – Prä-Inkrement

<?php
$zahl = 1000;
echo ++$zahl;
?>

Ausgabe
1001

Beispiel – Post-Inkrement

<?php
$zahl = 1000;
echo $zahl++;
?>

Ausgabe
1000


Wann ist ein Ausdruck wahr?

Oft ist man nicht am spezifischen Wert eines Ausdrucks interessiert, sondern bewertet lediglich, ob der Ausdruck wahr oder falsch ist.

PHP kennt die Booleschen Konstanten TRUE (1) und FALSE (0). Ein Ausdruck ist in PHP dann wahr, wenn ihm, wie im folgenden Beispiel, die boolesche Konstante TRUE oder ein anderer Ausdruck, dessen Wert TRUE ist, zugewiesen wurde.

<?php
$signal = TRUE;
echo "$signal";
?>

Ausgabe
1


Vergleichsausdrücke

Eine weitere, auf dem im vorherigen Abschnitt eingeführten Wahrheitswert basierende Kategorie von Ausdrücken sind die Vergleichsausdrücke. Vergleichsausdrücke werden z. B. in bedingten Anweisungen unter Verwendung von Vergleichsoperatoren eingesetzt:

if ($signal == TRUE) Anweisung;

In Vergleichsausdrücken wird immer der Wert zweier Teilausdrücke verglichen. Der Wert des Gesamtausdrucks ist, abhängig vom Ergebnis des Vergleichs, entweder also falsch (0) oder wahr (1).


Kombinierte Zuweisungs- und Operator-Ausdrücke
Sollten Sie schon mit der Sprache C gearbeitet haben, kennen Sie die Möglichkeit, Zuweisungs- und Operator-Ausdrücke zu kombinieren. In PHP ist dies ebenfalls möglich.

Um zum Beispiel den Wert einer Variablen um 100 zu erhöhen, kann in einer Anweisung der folgende Ausdruck verwendet werden:

$zahl += 100

Das ist gleichbedeutend mit:

»Nehme den Wert von $zahl, addiere 100 hinzu und weise den entstandenen Wert der Variablen $zahl zu«.

In solchen kombinierten Zuweisungs- und Operator-Ausdrücken kann jeder Operator, der zwei Elemente verbindet, zusammen mit einem Zuweisungsoperator verwendet werden.

<?php
$zahl = 100;
echo $zahl *= 10;
?>

Ausgabe
1000
{PSP}Konditionale Operatoren in Ausdrücken

Ein weiterer Typ von Ausdrücken, der in PHP oft gebraucht wird und den Sie vielleicht von der Sprache C her kennen, ist der dreifache konditionale Operator:

Ausdruck ? Ausdruck2 : Ausdruck3

Wenn der Wert des ersten Ausdrucks wahr ist, dann wird der Wert des zweiten Ausdrucks zurückgegeben. Andernfalls, d. h., wenn der Wert von Ausdruck1 falsch ist, nimmt der Wert des Gesamtausdrucks den Wert des dritten Ausdrucks an.

Beispiel

<?php
$punkte = 1000;
$highscore = 500;
$resultat = ($highscore > $punkte ) ? "Alter" : "Neu";
echo $resultat;
?>

Ausgabe
Neu

Beispiel

<?php
$punkte = 500;
$highscore = 1000;
$resultat = ($highscore > $punkte ) ? "Alter" : "Neu";
echo $resultat;
?>

Ausgabe
Alter