1.2 Variablen, Datentypen und Operatoren
Innerhalb eines Programms können Informationen zur späteren Verwendung in Variablen gespeichert werden.
1.2.1 Datentypen
Variablen unterscheiden sich in ihren Datentypen. PHP unterstützt unter anderem Datentypen für:
ganze Zahlen
Fließkommazahlen, also Zahlen mit Nachkommastellen
Zeichenketten (auchStrings genannt)
Felder (ein- und mehrdimensionale Felder von Variablen)
Objekte
Der Datentyp für eine PHP-Variable wird nicht beim Programmieren festgelegt, sondern richtet sich nach dem Zusammenhang, in dem die Variable verwendet wird. Sie kann bei ihrem ersten Erscheinen sofort benutzt werden und muss dem Programm nicht vorher bekannt gemacht werden. Sie kann ihren Datentyp innerhalb eines Programms wechseln.
Seit PHP 7.0 gibt es die Möglichkeit, die Datentypen der benutzten Variablen beim Aufruf von Funktionen genauer zu prüfen. Dabei wird mit sogenannten Typhinweisen gearbeitet. Typhinweise verbessern die Lesbarkeit und erleichtern den Ablauf und die Pflege von PHP-Programmen. Mehr dazu finden Sie inAbschnitt 1.10.11.
Zunächst geht es um dieeinfachen Datentypen (Zahlen und Zeichenketten). Später kommen Felder und Objekte hinzu.
1.2.2 Namen für Variablen
Für den Namen einer Variablen gelten folgende Regeln:
Er muss mit einem Dollarzeichen beginnen.
Er darf keine Leerzeichen enthalten.
Er darf nur aus Buchstaben und Ziffern bestehen, wobei das erste Zeichen ein Buchstabe sein muss. Es sind Groß- und Kleinbuchstaben erlaubt, zwischen denen jedoch unterschieden wird ($HokusPokus ist nicht das Gleiche wie $hokuspokus).
Er darf keine sprachspezifischen Zeichen wie zum Beispiel die deutschen Umlaute oder ß (»scharfes S«) enthalten.
Er darf als einziges Sonderzeichen den _ (Unterstrich) enthalten.
Er darf nicht mit einem reservierten Wort identisch sein, zum Beispiel mit einem Befehl aus der Sprache PHP.
Sie sollten selbsterklärende Namen vergeben. Dies hat den Vorteil, dass sich jeder sofort zurechtfindet, der sich später mit dem Programm befasst. Einige Beispiele sind: $Startmeldung, $Temperaturwert, $XKoordinate, $Ywert.
Diese Regeln gelten in ähnlicher Form für die Namen von Konstanten (sieheAbschnitt 1.2.8), Funktionen (sieheAbschnitt 1.7) sowie Klassen und Methoden (sieheKapitel 4). Eine wichtige Ausnahme: Nur die Namen von Variablen beginnen mit einem Dollarzeichen.
1.2.3 Variablen für Zahlen
Betrachten Sie einmal das folgende Programm, in dem verschiedene Zahlen gespeichert und ausgegeben werden:
<!DOCTYPE html>...<body>
<?php
$ganzeZahl = -14;
$kommaZahl =1.35;
$grosseZahl =5.5e6;
$kleineZahl =3.8e-3;
$separatorGross =1_580_000_000;
$separatorKlein =0.000_000_001_580;
echo$ganzeZahl ."<br>";
echo$kommaZahl ."<br>";
echo$grosseZahl ."<br>";
echo$kleineZahl ."<br>";
echo$separatorGross ."<br>";
echo$separatorKlein;
?>
</body></html>
Listing 1.3 Die Datei »zahl_variable.php«
Es wird eine Variable mit dem Namen $ganzeZahl eingeführt. Dieser Variablen wird der Wert -14 zugewiesen, wodurch $ganzeZahl zu einer Variablen für eine ganze Zahl wird. Bei negativen Werten wird ein Minuszeichen vorangestellt.
Die Variable $kommaZahl wird eingeführt. Ihr wird der Wert 1.35 zugewiesen, also wird $kommaZahl zu einer Variablen für eine Fließkommazahl. Dabei muss die englische Schreibweise mit einem Punkt als Dezimaltrennzeichen verwendet werden.
Eine Zahl kann auch alsExponentialzahl eingegeben werden. Diese Schreibweise eignet sich besonders für sehr große oder sehr kleine Zahlen:
Die Variable $grosseZahl erhält den Wert 5.5e6. Er wird gelesen als 5.5 × 10 hoch 6, also 5.5 × 1000000. Es ergibt sich der Wert 5500000.
Die Variable $kleineZahl erhält den Wert 3.8e-3. Er wird gelesen als 3.8 × 10 hoch -3, also 3.8 × 0.001. Es ergibt sich der Wert 0.0038.
Seit PHP 7.4 kann ein Unterstrich alsSeparator dienen. Ein Separator hilft bei der Eingabe von Zahlen mit vielen Ziffern, kann an beliebiger Stelle eingesetzt werden und hat keinen Einfluss auf den Zahlenwert. Lange Ziffernfolgen werden meist in Dreiergruppen unterteilt.
Mit echo lassen sich nicht nur Texte, sondern auch die gespeicherten Werte von Variablen ausgeben. Auch hier gilt: Mehrere Teile der Ausgabe werden mithilfe eines Punkts miteinander verbunden.Abbildung 1.4 zeigt die Ausgabe des Programms im Browser.
Abbildung 1.4 Zahlen
1.2.4 Rechenoperatoren für Zahlen
Bei Zahlen können Sie die Rechenoperatoren (arithmetischen Operatoren) ausTabelle 1.1 verwenden.
% | Modulo-Operation: der Rest bei einer ganzzahligen Division |
** | Potenzieren mithilfe des Exponentialoperators. Ein Beispiel: 2 ** 3, gesprochen: »2 hoch 3«. Mehr dazu folgt inAbschnitt 10.2. |
Tabelle 1.1 Rechenoperatoren in PHP
Ein Beispiel mit einigen Berechnungen:
<!DOCTYPE html>...<body>
<?php
$zahlEins =3 *2 +2.5 *4 -3;
$zahlZwei =3 * (2 +2.5) *4 -3;
$zahlDrei =23 /...