PHP – Teil 4: Datentypen und Operatoren

Nachdem wir uns im letzten Teil der Grundlagenserie zu PHP mit den Variablen beschäftigt haben, kommen wir nun zu einem verwandten Thema – den Datentypen und den Operatoren. In diesem Artikel gebe ich einen grundsätzlichen Überblick über die Funktionsweise und Besonderheiten dieser beiden Programmierkonstrukte.

Was ist ein Datentyp?

Im letzten Teil haben wir schon gelernt, dass eine Variable sowohl einen Namen als auch einen Wert hat. Daneben hat jede Variable aber noch einen Datentyp. Der Datentyp ist die Beschreibung für die Art des Wertes, der in der Variable gespeichert ist, damit der Computer weiß, womit er es zu tun hat. Ein Beispiel hierfür wäre der Datentyp Integer, welcher ganze Zahlen beschreibt. Eine Variable vom Typ Integer kann also nur ganze Zahlen enthalten. In PHP müssen wir uns (im Gegensatz zu vielen anderen Programmiersprachen) nicht selbst darum kümmern, einer Variablen einen Datentyp zu geben, das macht der Interpreter für uns. Wir können auch eine Variable, die bereits einen Wert von einem bestimmten Datentyp besitzt, mit einem ganz anderen Datentyp überschreiben. Versuchen wir, zwei Werte mit unterschiedlichen Datentypen zu verbinden, wird der Interpreter automatisch das Ergebnis im richtigen Datentyp speichern. Ein Beispiel: Addieren wir einen Integer- (also eine Ganzzahl) und eine Float Variable (also eine Kommazahl) wird das Ergebnis in einer Float Variable gespeichert, da andernfalls die Stellen nach dem Komma verloren gingen. Welche Datentypen gibt es? Es gibt einige verschiedene Datentypen in PHP. Auf die wichtigsten möchte ich hier eingehen:

  • Integer – Ein Integer ist eine Ganzzahl ohne Nachkommastellen
  • Float – Werte vom Datentyp Float enthalten Zahlen mit Nachkommastellen. Die Genauigkeit hängt hier von der Einstellung in PHP ab
  • String – Ein String enthält eine Zeichenkette, also einen beliebigen Text. Wir sagen PHP damit Dieser Teil ist Text, versuch nicht, ihm eine Bedeutung zuzuordnen sondern akzeptiere ihn einfach als Text. Auf Strings gehe ich in einem späteren Teil der Serie noch näher ein.
  • Array – Mit Arrays beschäftigen wir uns in einem späteren Teil der Serie näher
  • Object – Objekte werden auch extra behandelt
  • Boolean – Boolsche Werte können nur einen von zwei Werten annehmen: true oder false. Diese werden bei anderen Bestandteilen von PHP noch sehr wichtig werden.
  • null – Der Wert null ist etwas besonderes, er steht quasi für „nichts“. Es bedeutet also, dass in dieser Variable nichts gespeichert ist (auch 0, false oder ein leerer String sind Werte). Eine Variable mit dem Wert null existiert, besitzt aber keinen Wert.

Was sind Operatoren?

Operatoren werden verwendet, um Werte miteinander zu verarbeiten. Das wohl einfachste Beispiel wäre hier das + Zeichen, welches zwei Werte addiert. Doch nicht nur die Grundrechenregeln sind in PHP vorhanden, es gibt noch einige weitere wichtige Operatoren:

Die Grundrechenarten (auch arithmetische Operatoren genannt) sind gewohnt mit + – * / vorhanden. Ich kann Werte also problemlos damit berechnen. Unter den Rechenarten gibt es mit dem sogenannten Modulo noch eine Besonderheit, dieser wird mit dem % Zeichen benutzt und gibt mir den Rest einer Division zurück. Hier ein Beispiel:

 

Eine Besonderheit ist das Ausrufezeichen. Dies ist der sogenannte Verneinungsoperator, er sorgt also dafür, dass ein boolscher Wert umgekehrt wird. Hier ein Beispiel:

 

Den ersten Zuweisungsoperator haben wir bereits bei den Variablen kennengelernt, das = Zeichen. Dieses sorgt dafür, dass der Wert rechts davon dem linken Wert zugewiesen wird. Man könnte es also übersetzen mit „erhält den Wert von“. Beispiel:

Doch neben dem Standardzuweisungsoperator gibt es noch einige weitere. Alle arithmetischen Operatoren können mit dem = Zeichen verbunden werden. Hier einige Beispiele:

 

Eine weitere wichtige Operatorengruppe sind die sogenannten Vergleichsoperatoren. Diese vergleichen zwei Werte miteinander und geben dann einen boolschen Wert (entweder true oder false) zurück. Ein Beispiel ist hier das == Zeichen. Dieses gibt true zurück, wenn der Wert davor gleich dem Wert dahinter ist. Es könnte also übersetzt werden mit „hat den gleichen Wert wie“. Das Gegenteil wäre !=, welches dann true zurückgibt, wenn die beiden Werte NICHT gleich sind. Ein paar Beispiele zu diesen beiden Operatoren:

Auf die gleiche Weise funktionieren auch die anderen Vergleichsoperatoren:

  • > und < – geben true zurück, wenn der linke Wert größer bzw kleiner als der rechte ist
  • >= und <= – gibt true zurück, wenn der linke Wert größer oder gleich bzw kleiner oder gleich der rechte ist
  • === – gibt true zurück, wenn Wert und Datentyp rechts und links identisch sind
  • !== – gibt true zurück, wenn sich Wert oder Datentyp unterscheiden

Zu den letzten beiden Vergleichsoperatoren möchte ich hier noch ein paar Beispiele geben:

 

Als nächstes beschäftigen wir uns mit den Inkrement- und Dekrementoperatoren. Diese sind eigentlich sehr einfach aufgebaut, bestehen aus den Zeichen ++ und und können einfach vor oder hinter Variablen gehängt werden. Dabei erhöhen sie den Wert der Variable um eins beziehungsweise verringern ihn um eins. Der Unterschied, wenn man den Operator davor oder dahinter anhängt, liegt einfach daran, dass diese Operation dann vor der Rückgabe des Werts beziehungsweise danach passiert. Dazu ein paar Beispiele:

 

 

Die letzte interessante Gruppe der Operatoren (es gibt noch einige weitere, doch die sind momentan nicht von Bedeutung) sind die sogenannten logischen Operatoren. Diese sorgen für eine logische Verknüpfung von zwei Werten. Ein einfaches Beispiel ist der && Operator. Dieser gibt dann true zurück, wenn die Ausdrücke auf beiden Seiten ebenfalls true sind. Ein einfaches Beispiel hierfür wäre der Vergleich zwischen zwei boolschen Variablen. Sind beide Variablen true (und nur dann) gibt der Operator auch true zurück.

Neben dem && Operator (der auch mit dem Schlüsselwort and benutzt werden kann) gibt es aber auch noch den  || Operator (oder Schlüsselwort or). Dieser gibt true zurück, solange mindestens einer der beiden Ausdrücke rechts und links true ist, egal welcher davon. Hier ein Beispiel:

Als letztes gibt es noch das Schlüsselwort xor. Dieses steht für entweder oder, das heißt dieser Operator gibt dann true zurück, wenn entweder der linke oder der rechte Ausdruck true sind. Sollten beide Ausdrücke jedoch true oder false sein gibt er false zurück.

7 Kommentare zu “PHP – Teil 4: Datentypen und Operatoren

  1. Hallo,
    ich bin mir ziemlich sicher das sich bei dem zweiten Inkrement Beispiel ein kleiner Fehler eingeschlichen hat, sowohl $i als auch $ergebnis müssten nach dieser Zeile sieben sein. Ist wahrscheinlich nur ein Tippfehler, jedoch wollte ich trotzdem darauf hinweisen, da es möglicherweise Anfänger verwirren könnte.

  2. Hallo Frank,

    sehr lesenswert die Reihe. Erklärungen, Beispiele und ein Lerntempo wie ich es mag.

    In dem 5. Codeblock unter dem Abschnitt „Was sind Operatoren“ steht in Zeile 5
    (2 == 2 // false). Hier müßte der Kommentar noch auf true geändert werden.

    Gruß
    René

      • Hallo Frank,
        kann doch schnell mal passieren, vor allem bei der Fülle an Tutorials.
        Ist ja überhaupt kein Thema. Ich tippe eh darauf, dass du so nur überprüfen
        wolltest, ob es auch ordentlich gelesen wird. 😉

        Nur für mein Verständnis, in Zeile 6 desselben Blocks steht.
        (2 != 2 // true) hier müßte doch als Kommentar false hin oder?

        Gruß
        René

        • Hi René,

          auch das ist natürlich absolut richtig. Gut aufgepasst. Wie du schon gesagt hast, pure Absicht 😀

          != kehrt das erwartete Ergebnis um, das heißt wenn die beiden Zahlen gleich sind kommt dementsprechend false zurück.

          Grüße
          Frank

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*