Die Syntax bildet das Grundgerüst der PHP-Programmierung und definiert, wie PHP-Code strukturiert werden muss, damit er korrekt funktioniert. In diesem Abschnitt erhalten Sie einen Überblick über die grundlegende Syntax von PHP, bevor wir in den folgenden Abschnitten auf spezifische Elemente wie Variablen, Datentypen, Operatoren und Kontrollstrukturen eingehen.
PHP-Code wird durch spezielle Tags gekennzeichnet, die dem Server mitteilen, dass der enthaltene Code als PHP interpretiert werden soll.
<?php
echo "Dies ist PHP-Code";
?>Diese Standard-Tags sollten immer verwendet werden, da sie in allen PHP-Konfigurationen funktionieren und die beste Kompatibilität bieten.
Wenn eine Datei nur PHP-Code enthält, wird empfohlen, das schließende Tag wegzulassen. Dies verhindert unbeabsichtigte Ausgaben durch Leerzeichen oder Zeilenumbrüche nach dem schließenden Tag, was zu Problemen bei der Ausgabe von Headern oder bei der Verwendung von Sessions führen kann.
<?php
// Empfohlene Schreibweise für reine PHP-Dateien
echo "Dies ist eine reine PHP-Datei";
// Kein schließendes PHP-Tag nötigAb PHP 5.4 sind die kurzen Echo-Tags standardmäßig aktiviert und bieten eine praktische Kurzform für die Ausgabe:
<?= "Dies ist eine Kurzform für echo" ?>
<!-- Äquivalent zu: <?php echo "Dies ist eine Kurzform für echo"; ?> -->Diese Form ist besonders nützlich in Template-Dateien, wo häufig PHP-Variablen in HTML-Code eingebettet werden.
Eine der Stärken von PHP ist die nahtlose Integration in HTML. PHP-Code kann an beliebigen Stellen in HTML-Dokumenten eingebettet werden:
<!DOCTYPE html>
<html>
<head>
<title>Meine PHP-Webseite</title>
</head>
<body>
<h1>Willkommen</h1>
<?php
$zeit = date("H:i");
?>
<p>Es ist jetzt <?= $zeit ?> Uhr.</p>
</body>
</html>Diese Flexibilität ermöglicht es, dynamische Inhalte einfach in ansonsten statische HTML-Seiten einzufügen. Es ist wichtig, die PHP-Tags korrekt zu öffnen und zu schließen, da der Code außerhalb dieser Tags als normaler HTML-Text behandelt wird.
Da PHP häufig mit HTML gemischt wird, bietet es eine alternative Syntax für Kontrollstrukturen, die in Templates besser lesbar ist. Diese wird in einem späteren Abschnitt zu Kontrollstrukturen ausführlicher behandelt, hier aber kurz erwähnt:
<?php if ($bedingung): ?>
<div>Dieser HTML-Code wird angezeigt, wenn die Bedingung erfüllt ist.</div>
<?php else: ?>
<div>Dieser HTML-Code wird angezeigt, wenn die Bedingung nicht erfüllt ist.</div>
<?php endif; ?>Diese Syntax verwendet Doppelpunkte (:) statt
geschweifte Klammern ({ und }) und schließende
Schlüsselwörter wie endif, endwhile,
endfor, usw.
In PHP werden Anweisungen durch ein Semikolon (;)
beendet. Das Semikolon teilt dem Interpreter mit, dass eine Anweisung
abgeschlossen ist und die nächste beginnt:
<?php
echo "Erste Anweisung";
echo "Zweite Anweisung";
// Fehler: Fehlendes Semikolon
echo "Dies verursacht einen Syntaxfehler"
echo "Eine weitere Anweisung";
?>Die letzte Anweisung vor einem schließenden PHP-Tag
(?>) benötigt kein Semikolon, obwohl es als bewährte
Praxis gilt, es trotzdem zu setzen:
<?php
echo "Semikolon kann hier weggelassen werden"
?>Kommentare sind nicht-ausführbarer Code, der zur Dokumentation dient. PHP unterstützt mehrere Arten von Kommentaren:
<?php
// Einzeiliger Kommentar
# Alternativer einzeiliger Kommentar (Shell-Stil)
/*
* Mehrzeiliger Kommentar
* über mehrere
* Zeilen
*/
/**
* Dokumentationskommentar (DocBlock)
*
* Wird oft von Tools wie PHPDoc verarbeitet
* und dient zur automatischen Dokumentationsgenerierung
*/
?>Kommentare sind wichtige Elemente gut strukturierten Codes und sollten verwendet werden, um die Absicht hinter dem Code zu erklären, besonders bei komplexen Algorithmen oder ungewöhnlichen Implementierungen.
Obwohl PHP keine strengen Namenskonventionen erzwingt, haben sich in der Community bestimmte Standards etabliert:
$,
gefolgt von Buchstaben oder Unterstrichen. CamelCase ist üblich
($userName, $firstName).MAX_VALUE, API_KEY).getUserData(), calculate_total()).UserProfile,
DatabaseConnection).Die konsequente Einhaltung von Namenskonventionen verbessert die Lesbarkeit und Wartbarkeit des Codes erheblich.
PHP ist im Allgemeinen unempfindlich gegenüber Whitespace (Leerzeichen, Tabulatoren, Zeilenumbrüche), außer wenn dieser in Zeichenketten vorkommt:
<?php
// Diese beiden Anweisungen sind für PHP identisch
echo "Hallo";
echo "Hallo" ;
// Bei Zeichenketten ist Whitespace jedoch relevant
echo "Hallo Welt";
echo "Hallo Welt"; // Enthält zusätzliche Leerzeichen
?>Dennoch ist eine konsistente Formatierung für die Lesbarkeit des Codes unerlässlich. In der PHP-Community haben sich verschiedene Formatierungsstandards etabliert, darunter die PSR-Richtlinien (PHP Standard Recommendations), insbesondere PSR-1 (Basic Coding Standard) und PSR-12 (Extended Coding Style).
Literale sind fest kodierte Werte in einem Programm:
<?php
// Verschiedene Arten von Literalen
42; // Integer-Literal
3.14; // Float-Literal
"Text"; // String-Literal
true; // Boolesches Literal
null; // Null-Literal
[1, 2, 3]; // Array-Literal
?>Ausdrücke sind Kombinationen aus Literalen, Variablen, Operatoren und Funktionsaufrufen, die zu einem Wert ausgewertet werden:
<?php
5 + 3; // Arithmetischer Ausdruck
$a > $b; // Vergleichsausdruck
foo() || bar(); // Logischer Ausdruck mit Funktionsaufrufen
$user->isActive(); // Methodenaufruf
?>PHP bietet verschiedene Möglichkeiten zur Ausgabe von Inhalten:
<?php
// Grundlegende Ausgabefunktionen
echo "Hallo Welt!"; // Kann mehrere Parameter verarbeiten
print "Hallo Welt!"; // Kann nur einen Parameter verarbeiten
// Formatierte Ausgabe
printf("Zahl: %d", 42); // Formatierte Ausgabe
sprintf("Formatiert: %s", "Text"); // Gibt formatierte Zeichenkette zurück
// Debugging-Ausgaben
var_dump($variable); // Detaillierte Informationen inkl. Typ und Wert
print_r($array); // Menschenlesbare Darstellung von Arrays/Objekten
?>Die echo-Anweisung ist die am häufigsten verwendete
Ausgabemethode in PHP und bietet eine gute Performance. Die Funktionen
var_dump() und print_r() sind besonders
nützlich während der Entwicklung, um den Inhalt von Variablen zu
untersuchen.