Contao Dozent Marvin Kellermann

|

Einleitendes PHP Tutorial

Hi! Da wir uns zurzeit auch mit der Erstellung eines eigenen Contao Themes beschäftigen (hier geht es zur Übersicht), wollte ich nicht auslassen auch über PHP zu sprechen. Ich habe bereits ein kostenloses YouTube-Tutorial zu dem Thema aufgenommen. Schau es dir gern hier an! Alle, die lieber einen Beitrag lesen, heiße ich hiermit herzlich willkommen.

Wo für wird PHP verwendet?

Die Scriptsprache PHP ermöglicht es mir, dem User dynamische Ausgaben anzuzeigen. Hast du beispielsweise ein Copyright-Hinweis auf deiner Website, kannst du das Jahr zwar jedes Mal manuell umstellen - du kannst aber auch mit PHP jederzeit das aktuelle Jahr ausgeben lassen. Bevor wir uns die möglichen Ausgaben vor Augen führen, noch eine wichtige Sache: PHP wird Serverseitig verarbeitet. Daher ist für jede Ausgabe ein refresh der Seite nötig - anders als CSS oder JavaScript, die direkt im Browser verarbeitet werden.

Wie ist eine Ausgabe mit PHP möglich?

Zunächst müssen wir im Quellcode kenntlich machen, dass wir nun PHP-Code einsetzten möchten. Das funktioniert mit spitzen Klammern “< und >”, diese sollten dir bereits begegnet sein. Alle HTML-Tags werden mit spitzen Klammern an- und abgeführt. Der komplette PHP-Tag wird so geschrieben:

<?php // Hier kommt der PHP Code ?>

Durch die zwei Schrägstriche habe ich eine Zeile erschaffen, die im Code nicht berücksichtigt werden - ein Kommentar. Er dient zur Übersicht und ist essenziell, gerade, wenn später mehrere Menschen an dem Programm arbeiten.

Das Zauberwort zur Ausgabe ist nun echo. Im Code:

<?php
echo “Hallo Welt.”;
echo 123;
?>

Möchtest du einen String (einen Text, Buchstaben) ausgaben, sind dafür Anführungszeichen nötig. Bei Zahlen und so ziemlich allen anderen Ausgaben sind sie nicht nötig oder führen sogar zu Fehlern. Auch einen Fehler erhältst du, wenn du das Semikolon hinter einem PHP-Befehl vergisst.

Variablen in PHP definieren und ausgeben

So richtig dynamisch ist der String “Hallo Welt” nicht. Sowohl heute, als auch vorgestern ist immer weiterhin “Hallo Welt”. Langweilig. Spannender werden da bereits die Variablen. Bekannt aus dem Matheunterricht, können Variablen Werte zugewiesen bekommen und diese verändern. Variablen werden in PHP mit einem Dollarzeichen angeführt. Mit einem Gleichzeichen kann dann ein Wert zugewiesen werden:

<?php $meine_variable = “Hallo Welt.”; ?>

Wenn ich nun mit einem echo die Variable $meine_variable ausgeben lassen würde, erhielt ich das gleiche Ergebnis, wie bei meiner Ausgabe oben: Hallo Welt. Natürlich kann ich in Variablen auch Zahlen oder Objekte (zu Objekten kommt eventuell noch ein gesondertes Tutorial, das ist schon etwas fortgeschrittener) speichern.

<?php 
$x = 4;
$x = $x + 6;
echo $x;
?>

Diese paar Zeilen würden die Ausgabe 10 ermöglichen. Zunächst wird die Variable $x definiert und mit dem Wert 4 gefüllt. Anschließend wird die Variable mit dem Wert von $x plus 6 neu befüllt.

Verzweigungen mithilfe von If-Abfragen

Meist … also eigentlich fast immer … gibt es Konditionen, die entscheiden, wie die Ausgabe ausfällt. Beispiel: hat sich ein User in einem Onlineshop eingeloggt, soll nun der Nachname des Users erscheinen. Diese Anforderung würde logischerweise eine Datenabfrage benötigen, aber halten wir es in diesem Fall einfach. Mit dem Fragewort “if” können wir eine Abfrage einleiten. In runden Klammern steht dann die Bedingung: ist diese erfüllt, wird ein Teil des Codes ausgeführt, falls nicht, wird eine neue Abfrage gestartet oder ein anderer Code ausgeführt. Beispiel:

<?php
if ($username == “Marvin”) {
echo “Hallo Herr Kellermann”;
} elseif ($username == “Max”) {
echo “Hallo Herr Mustermann”;
}
?>

Bei der Abfrage in den runden Klammern handelt es sich dabei nicht um Zuordnung, wie oben bei den Variablen, sondern um die Abfrage, ob der Inhalt der Variable $username mit dem String “Marvin” übereinstimmt. Ist dies der Fall, wird der Code in den geschweiften Klammern ausgeführt. Hinweis: geschweifte Klammern sind erst nötig, sobald mehr als ein Befehl ausgeführt wird. In diesem wäre es theoretisch nicht nötig - es ist trotzdem sinnvoll sich immer die Klammern anzugewöhnen. Die Abfrage von “elseif” wird nur ausgeführt, falls die Abfrage falsch ist. Für den Fall, dass Username “Marvin” ist, wird nicht mehr geprüft, ob er eventuell “Max” sein könnte. Das spart Rechenleistung des Servers.

Das sind die absoluten Grundpfeiler von PHP, damit solltest du gewappnet sein, um die in den folgenden Tutorials Template-Dateien erstellen zu können.

Zurück

Ich beschäftige mich seit Contao 3 mit dem CMS. Auf meinem Blog und auf YouTube findest du einige kostenlose Beiträge und Videos. Gerne unterstütze ich dich bei deinen Projekten, schau gern auf meiner Agentur-Website vorbei.

Du benötigst Unterstützung bei deiner Contao-Instanz?