Variablen und Konstanten

Geschätzte Lektüre: 9 Minuten 464 Ansichten

In PHP sind Variablen und Konstanten grundlegende Konzepte, die es Ihnen ermöglichen, Daten zu speichern und im Laufe Ihres Programms zu verwenden.

Variablen sind wie Behälter, die Werte enthalten, die sich während der Ausführung des Skripts ändern können. Sie haben Namen, auf die Sie verweisen, um die gespeicherten Werte abzurufen oder zu ändern.

Konstanten sind ähnlich wie Variablen, aber ihr Wert wird einmal gesetzt und kann dann nicht mehr geändert werden. Sie sind nützlich für Werte, die sich während der gesamten Ausführung des Skripts nicht ändern sollen.

Variablen in PHP

Grundlagen von Variablen

In PHP beginnen alle Variablen mit einem Dollarzeichen $, gefolgt vom Variablennamen.

$meineVariable = "Hallo Welt";

Regeln für Variablennamen:

  • Muss mit $ beginnen
  • Der Name nach dem $ muss mit einem Buchstaben oder Unterstrich beginnen
  • Kann nur alphanumerische Zeichen und Unterstriche enthalten (A-z, 0-9, _)
  • Variablennamen sind case-sensitive ($alter ist nicht dasselbe wie $Alter)

Variablen zuweisen und verwenden

// Variable deklarieren und Wert zuweisen
$name = "Max Mustermann";

// Variable ausgeben
echo $name; // Gibt "Max Mustermann" aus

// Variable ändern
$name = "Erika Musterfrau";
echo $name; // Gibt jetzt "Erika Musterfrau" aus

Datentypen in PHP Variablen

PHP ist eine „schwach typisierte“ Sprache, was bedeutet, dass Sie den Datentyp nicht explizit angeben müssen. PHP bestimmt den Typ automatisch basierend auf dem zugewiesenen Wert.

Die wichtigsten Datentypen:

$text = "Das ist ein String"; // String (Zeichenkette)
$ganzeZahl = 42; // Integer (Ganzzahl)
$kommazahl = 3.14; // Float (Fließkommazahl)
$wahr = true; // Boolean (Wahrheitswert)
$falsch = false;
$farben = array("Rot", "Grün", "Blau"); // Array (Sammlung von Werten)
$leer = null; // NULL (Kein Wert)

Variableninterpolation

In doppelten Anführungszeichen können Variablen direkt in Strings eingebettet werden:

$alter = 25;
echo "Ich bin $alter Jahre alt."; // Gibt "Ich bin 25 Jahre alt." aus

Variablen-Variablen

PHP erlaubt die Verwendung von Variablen-Variablen, bei denen der Name einer Variablen dynamisch gesetzt wird:

$original = 'Hallo';
$$original = 'Welt'; // Erstellt eine Variable $Hallo mit Wert 'Welt'

echo $original; // Gibt "Hallo" aus
echo $Hallo;    // Gibt "Welt" aus

Konstanten in PHP

Definition von Konstanten

Konstanten werden mit der Funktion define() erstellt oder mit dem const Schlüsselwort (ab PHP 5.3).

define("MEINE_KONSTANTE", "Ein Wert");
// oder
const MEINE_ANDERE_KONSTANTE = "Ein anderer Wert";

Regeln für Konstantennamen:

  • Werden ohne $ geschrieben
  • Traditionell in Großbuchstaben (Konvention, nicht Pflicht)
  • Dürfen nur Buchstaben, Zahlen und Unterstriche enthalten
  • Müssen mit einem Buchstaben oder Unterstrich beginnen
  • Sind case-sensitive (standardmäßig)

Unterschiede zwischen Variablen und Konstanten

  1. Wertzuweisung:
    • Variablen können jederzeit geändert werden
    • Konstanten können nur einmal gesetzt werden
  2. Syntax:
    • Variablen beginnen mit $
    • Konstanten werden ohne $ geschrieben
  3. Gültigkeitsbereich:
    • Konstanten sind automatisch global (überall verfügbar)
    • Variablen haben begrenzten Scope (außer globale Variablen)

Konstanten verwenden

define("SEITENTITEL", "Meine Webseite");

echo SEITENTITEL; // Gibt "Meine Webseite" aus

// Dies würde einen Fehler verursachen:
// SEITENTITEL = "Neuer Titel"; // Nicht erlaubt!

Vordefinierte Konstanten

PHP hat viele vordefinierte Konstanten, z.B.:

echo PHP_VERSION; // Gibt die PHP-Version aus
echo __LINE__;    // Gibt die aktuelle Zeilennummer im Skript aus
echo __FILE__;    // Gibt den vollständigen Pfad und Dateinamen aus

Gültigkeitsbereich von Variablen (Scope)

Lokale Variablen

Variablen, die innerhalb einer Funktion deklariert werden, sind nur innerhalb dieser Funktion verfügbar.

function meineFunktion() {
    $lokal = "Ich bin lokal";
    echo $lokal; // Funktioniert
}

meineFunktion();
echo $lokal; // Erzeugt einen Fehler, da $lokal hier nicht definiert ist

Globale Variablen

Variablen, die außerhalb von Funktionen deklariert werden, sind im globalen Scope.

$global = "Ich bin global";

function test() {
    echo $global; // Funktioniert NICHT, da $global hier nicht sichtbar ist
}

test();

Um innerhalb einer Funktion auf globale Variablen zuzugreifen, verwenden Sie das global Schlüsselwort:

$global = "Ich bin global";

function test() {
    global $global;
    echo $global; // Jetzt funktioniert es
}

test();

Superglobale Variablen

PHP hat spezielle vordefinierte Variablen, die immer verfügbar sind, egal wo im Skript:

  • $GLOBALS – Referenz auf alle globalen Variablen
  • $_SERVER – Server- und Ausführungsinformationen
  • $_GET – HTTP GET-Variablen
  • $_POST – HTTP POST-Variablen
  • $_FILES – Hochgeladene Dateien
  • $_COOKIE – HTTP Cookies
  • $_SESSION – Session-Variablen
  • $_REQUEST – Kombination aus GET, POST und COOKIE
  • $_ENV – Umgebungsvariablen

Beispiel mit $_GET:

// Wenn die URL z.B. ist: script.php?name=Max
echo "Hallo, " . $_GET['name']; // Gibt "Hallo, Max" aus

Best Practices für Variablen und Konstanten

Beschreibende Namen verwenden:

// Schlecht
$a = 10;

// Gut
$benutzerAlter = 10;

Konsistente Namenskonventionen:

  • Variablen: camelCase ($benutzerName)
  • Konstanten: UPPER_CASE (MAX_WERT)

Initialisieren Sie Variablen:

// Schlecht
$counter;

// Gut
$counter = 0;

Verwenden Sie Konstanten für magische Zahlen/Strings:

// Schlecht
if ($status == 3) { ... }

// Gut
define("STATUS_AKTIV", 3);
if ($status == STATUS_AKTIV) { ... }

Sichere Variablenverwendung:

// Prüfen, ob eine Variable existiert, bevor Sie sie verwenden
if (isset($benutzerName)) {
    echo $benutzerName;
}

Praktische Beispiele

Beispiel 1: Benutzerdaten speichern und anzeigen

// Variablen für Benutzerdaten
$vorname = "Anna";
$nachname = "Schmidt";
$alter = 28;
$istMitglied = true;

// Ausgabe
echo "Benutzer: $vorname $nachname, Alter: $alter";
echo $istMitglied ? " (Mitglied)" : " (Kein Mitglied)";

Beispiel 2: Konfiguration mit Konstanten

// Datenbank-Konfiguration
define("DB_HOST", "localhost");
define("DB_USER", "benutzer");
define("DB_PASS", "sicheresPasswort");
define("DB_NAME", "meine_datenbank");

// Verbindungsaufbau (simuliert)
function connectToDatabase() {
    echo "Verbinde zu " . DB_HOST . " mit Benutzer " . DB_USER;
    // Echte Verbindung würde hier stattfinden
}

connectToDatabase();

Beispiel 3: Berechnungen mit Variablen

$preis = 19.99;
$anzahl = 3;
$rabatt = 0.15; // 15%

$gesamt = $preis * $anzahl;
$endpreis = $gesamt - ($gesamt * $rabatt);

echo "Gesamtpreis: $gesamt €<br>";
echo "Nach Rabatt: $endpreis €";

Zusammenfassung

  • Variablen sind veränderbare Werte, die mit $ beginnen
  • Konstanten sind unveränderliche Werte, die mit define() oder const erstellt werden
  • PHP ist schwach typisiert – der Datentyp wird automatisch bestimmt
  • Variablen haben unterschiedliche Gültigkeitsbereiche (local, global, superglobal)
  • Verwenden Sie beschreibende Namen und konsistente Namenskonventionen
  • Konstanten sind nützlich für Werte, die sich nicht ändern sollen
Dieses Dokument teilen

Variablen und Konstanten

Oder Link kopieren

INHALT

Abonnieren

×
Cancel