PHP Grundlagen

6 Kernkonzepte
Die wichtigsten Grundlagen der PHP-Programmierung: Syntax · Variablen · Datentypen · Arrays · Funktionen · Superglobals PHP ist die meistgenutzte serverseitige Skriptsprache für die Webentwicklung. Diese Grundlagen sind essenziell für die Entwicklung dynamischer Websites und Webanwendungen.

Syntax – PHP-Tags, echo, Kommentare

<?php · echo · // · /* */
<?php // Einzeiliger Kommentar /* Mehrzeiliger Kommentar */ echo "Hallo Welt!"; ?>

PHP-Code wird in speziellen Tags eingeschlossen. <?php ... ?>. Die echo-Anweisung gibt Text aus. Jede Anweisung endet mit einem Semikolon (;).

Wichtige Syntax-Elemente

Element Beschreibung
<?php ... ?> PHP-Tags (öffnend/schließend)
echo / print Ausgabe von Text oder Variablen
// Einzeiliger Kommentar
/* */ Mehrzeiliger Kommentar
; Anweisungsende (Semikolon)
. String-Konkatenation
Beispiele
<?php
// Einzeiliger Kommentar
/* Mehrzeiliger Kommentar */
$name = "Anna";
echo "Hallo " . $name; // Hallo Anna
print "Welt"; // Welt
// Short-Tags (wenn aktiviert)
<?= $name ?> // Anna (Kurzform für echo)
?>
Tipp: Verwenden Sie <?= ... ?> (Short-Tags) für schnelle Ausgaben in Templates. Diese sind in modernen PHP-Versionen standardmäßig aktiviert.

Variablen – $variable, Typinferenz

$var · isset · unset · empty
$name = "Max"; // String $age = 30; // Integer $price = 19.99; // Float $isActive = true; // Boolean

Variablen werden in PHP mit einem Dollarzeichen ($) eingeleitet. PHP ist eine schwach typisierte Sprache – der Typ wird automatisch zur Laufzeit bestimmt.

Wichtige Funktionen

Funktion Beschreibung
isset($var) Prüft, ob Variable existiert und nicht null ist
empty($var) Prüft, ob Variable leer ist (null, 0, "", false)
unset($var) Löscht eine Variable
is_int($var) Prüft, ob Variable ein Integer ist
is_string($var) Prüft, ob Variable ein String ist
is_array($var) Prüft, ob Variable ein Array ist
is_bool($var) Prüft, ob Variable ein Boolean ist
Beispiele
<?php
$username = "admin";
$loggedIn = true;
// Variablen prüfen
if (isset($username)) {
echo "Username: $username";
}
// Variablen löschen
unset($username);
if (isset($username)) {
echo "existiert"; // wird nicht ausgeführt
}
// Typ-Prüfung
if (is_int($age)) {
echo "$age ist ein Integer";
}
?>
Tipp: Verwenden Sie isset() vor dem Zugriff auf Variablen, besonders bei Array-Elementen und Formulardaten, um Undefined variable-Warnungen zu vermeiden.

Datentypen – string, int, float, bool, array, object

string · int · float · bool · array · object
$string = "Hallo"; // String $integer = 42; // Integer $float = 3.14; // Float $bool = true; // Boolean $array = [1, 2, 3]; // Array $object = new stdClass(); // Object

PHP unterstützt verschiedene Datentypen: Skalare Typen (string, int, float, bool), Compound-Typen (array, object) und spezielle Typen (null, resource).

Typüberprüfung & Typumwandlung

Funktion / Operator Beschreibung
gettype($var) Gibt den Typ einer Variable zurück
var_dump($var) Gibt Typ und Wert einer Variable aus (Debug)
(int) $var Typumwandlung zu Integer
(string) $var Typumwandlung zu String
(array) $var Typumwandlung zu Array
(bool) $var Typumwandlung zu Boolean
Beispiele
<?php
$number = "42";
$int = (int) $number; // 42 (Integer)
$str = (string) $int; // "42" (String)
// Typ prüfen
echo gettype($int); // integer
var_dump($str); // string(2) "42"
// NULL
$nullVar = null;
if (is_null($nullVar)) {
echo "Variable ist null";
}
?>
Tipp: Verwenden Sie var_dump() zum Debuggen – es zeigt Typ, Länge und Wert einer Variable an. Für die Produktion sind var_export() oder Logging-Bibliotheken geeigneter.

Arrays – Indizierte & Assoziative Arrays

[] · array() · count · foreach · JSON
$list = ["Apfel", "Banane", "Kirsche"]; $person = ["name" => "Anna", "age" => 30]; echo $list[0]; // Apfel echo $person["name"]; // Anna

Arrays sind die wichtigste Datenstruktur in PHP. Es gibt indizierte Arrays (mit numerischen Schlüsseln) und assoziative Arrays (mit String-Schlüsseln). Arrays sind in PHP vielseitig und können beliebige Typen enthalten.

Wichtige Array-Funktionen

Funktion Beschreibung
count($arr) Anzahl der Elemente
array_push($arr, $val) Element am Ende hinzufügen
array_pop($arr) Letztes Element entfernen
array_merge($a, $b) Arrays zusammenführen
array_key_exists($key, $arr) Prüft, ob Schlüssel existiert
in_array($value, $arr) Prüft, ob Wert existiert
json_encode($arr) Array in JSON umwandeln
json_decode($json) JSON in Array umwandeln
Beispiele
<?php
// Indiziertes Array
$fruits = ["Apfel", "Banane", "Kirsche"];
echo $fruits[1]; // Banane
// Assoziatives Array
$user = [
"name" => "Max",
"email" => "max@example.com",
"age" => 28
];
echo $user["name"]; // Max
// Array durchlaufen
foreach ($user as $key => $value) {
echo "$key: $value\n";
}
// Array-Funktionen
array_push($fruits, "Orange");
$last = array_pop($fruits); // Orange
$json = json_encode($user); // {"name":"Max",...}
?>
Tipp: Arrays sind extrem vielseitig – sie können als Liste, Stack, Queue oder Dictionary verwendet werden. Die Kurzschreibweise [] ist ab PHP 5.4 verfügbar und empfohlen.

Funktionen – function, return, Parameter

function · return · & · ...$args
// Funktionsdefinition function add($a, $b) { return $a + $b; } // Aufruf $result = add(5, 3); // 8

Funktionen sind wiederverwendbare Codeblöcke. Sie können Parameter entgegennehmen und mit return einen Wert zurückgeben. PHP unterstützt Default-Parameter, Typdeklarationen (seit PHP 7) und variable Argumente.

Beispiele
<?php
// Funktion mit Default-Parameter
function greet($name = "Gast") {
return "Hallo $name!";
}
echo greet(); // Hallo Gast!
echo greet("Anna"); // Hallo Anna!
// Typdeklaration (PHP 7+)
function sum(int $a, int $b): int {
return $a + $b;
}
// Variable Argumente (variadic)
function addAll(...$numbers) {
return array_sum($numbers);
}
echo addAll(1, 2, 3, 4); // 10
// Callback-Funktion
$numbers = [1, 2, 3, 4];
$squared = array_map(function($n) {
return $n * $n;
}, $numbers); // [1, 4, 9, 16]
?>
Tipp: Verwenden Sie Typdeklarationen (seit PHP 7) für mehr Typsicherheit und bessere Lesbarkeit. Arrow Functions (fn($x) => $x * 2) sind seit PHP 7.4 verfügbar.

Superglobals – $_GET, $_POST, $_SESSION, $_SERVER

$_GET · $_POST · $_SESSION · $_SERVER · $_FILES
$name = $_GET["name"]; // URL-Parameter: ?name=Anna $email = $_POST["email"]; // Formular-Daten (POST) $_SESSION["user_id"] = 123; // Session-Daten echo $_SERVER["REQUEST_METHOD"]; // GET, POST, etc.

Superglobals sind vordefinierte globale Arrays, die in allen Gültigkeitsbereichen verfügbar sind. Sie enthalten Informationen über Anfragen, Formulardaten, Session, Server und Umgebung.

Die wichtigsten Superglobals

Superglobal Beschreibung
$_GET Parameter aus der URL (Query-String)
$_POST Daten aus HTTP-POST-Anfragen (Formulare)
$_SESSION Session-Daten (benötigt session_start())
$_COOKIE Cookies (vom Client gesendet)
$_SERVER Server- und Anfrage-Informationen
$_FILES Informationen über hochgeladene Dateien
$_REQUEST Kombiniert GET, POST und COOKIE
$_ENV Umgebungsvariablen
Beispiele
<?php
// GET-Parameter auslesen
$page = $_GET["page"] ?? "home"; // Null-Coalescing-Operator
// POST-Daten verarbeiten
if ($_SERVER["REQUEST_METHOD"] === "POST") {
$username = $_POST["username"];
$password = $_POST["password"];
}
// Session verwenden
session_start();
$_SESSION["user_id"] = 1;
echo $_SESSION["user_id"]; // 1
// Server-Informationen
echo $_SERVER["REMOTE_ADDR"]; // IP des Besuchers
echo $_SERVER["HTTP_USER_AGENT"]; // Browser-Info
?>
Tipp: Verwenden Sie den Null-Coalescing-Operator ?? für den sicheren Zugriff auf Superglobals: $name = $_GET["name"] ?? "Standard"; vermeidet Undefined-Index-Warnungen.

PHP Grundlagen im Überblick

<?php PHP-Tags
Start des PHP-Codes
$var Variablen
$ gefolgt vom Namen
[] Arrays
Indiziert & Assoziativ
function Funktionen
Wiederverwendbarer Code
$_GET Superglobals
URL-Parameter
echo Ausgabe
Text oder Variablen

Quick Summary

<?php
PHP-Tags
$var
Variablen
string
Datentypen
[]
Arrays
function
Funktionen
$_GET
Superglobals
<?php echo "Hallo"; ?> · $arr = ["name" => "Max"]; · function add($a, $b) { return $a + $b; }