Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 Markdown to HTML
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog‑Verzeichnis

Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
https://www.Hosterplus.de
Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
https://www.Artfiles.de
 
 
 

PHP - Variablen und deren Verwendung

Sie befinden sich: Home > Php > Php Variablen

PHP-Variablen sind immer durch ein $-Zeichen gekennzeichnet. Zulässig sind nur Namen, die nicht anderweitig durch Funktionsnamen vergeben sind. Es sind alle alphanumerischen Zeichen zugelassen (a-zA-Z0-9_\x7f-\xff). Der Name berücksichtigt Groß- und Kleinschreibung, darf jedoch nicht mit einer Ziffer beginnen.

Grundlagen der PHP-Variablen

Eine der wichtigsten Eigenschaften von PHP gegenüber anderen Programmiersprachen besteht darin, dass Variablen im Allgemeinen kein direkter Typ zugewiesen wird, wie es zum Beispiel bei C oder Java der Fall ist. Das bedeutet, dass eine Variable zu Beginn eine Ganzzahl (Integer) beinhalten kann und später eine Zeichenkette (String). PHP nutzt ein Konzept namens "Loose Typing".

Definition von Variablen - Ein Beispiel:

<?php
// eine String-Variable
$var = "Tim";
/* eine andere Variable (beachte die Groß-/Kleinschreibung) */
$Var = "Hans";

// gibt "Tim Hans" aus
echo $var, " ", $Var;

// ungültig - wird einen Syntaxfehler erzeugen
$4you = 23;
// gültig - beginnt mit Unterstrich
$_4you = 23;
// gültig - alphanumerisches Zeichen
$huschen = 23;
?>

Erklärung:

Der oben stehende Code definiert zwei Variablen mit den Namen $var und $Var. Da PHP-Variablennamen case-sensitive sind (Groß-/Kleinschreibung wird unterschieden), handelt es sich um zwei verschiedene Variablen. Der Wert für $var ist „Tim“ und der Wert für $Var ist „Hans“. Mit der echo-Anweisung wird der Inhalt beider Variablen ausgegeben.

Die Variable $4you würde einen Syntaxfehler erzeugen, da Variablennamen nicht mit einer Zahl beginnen dürfen. Die Variable $_4you ist dagegen gültig, da Variablen mit einem Unterstrich beginnen dürfen. Die Variable $huschen ist ebenfalls gültig, da sie mit einem alphanumerischen Zeichen beginnt.

Datentypen in PHP

Obwohl PHP lose typisiert ist, kennt es dennoch die folgenden Datentypen:

  • Boolean - kann nur TRUE oder FALSE sein
  • Integer - Ganzzahl mit Vorzeichen
  • Float/Double - Gleitkommazahl
  • String - Zeichenkette
  • Array - geordnete Sammlung von Werten
  • Object - Instanz einer Klasse
  • NULL - spezielle Variable ohne Wert
  • Resource - Referenz auf externe Ressource

Beispiel für Typumwandlung:

<?php
// String
$var = "42";
// Umwandlung in Integer
$num = (int)$var;
$float = 3.14;
// Umwandlung in Boolean (true, da nicht leer)
$bool = (bool)$var;

// string(2) "42"
var_dump($var);
// int(42)
var_dump($num);
// float(3.14)
var_dump($float);
// bool(true)
var_dump($bool);
?>

Mathematische Operationen mit Variablen

<?php
$var = 10;
$Var = 11;

// Speichert das Ergebnis der Multiplikation in $var
$var = $var * $Var;
// gibt 110 aus
echo $var;

// erhöht den Wert von $var um 1
$var++;
// gibt 111 aus
echo $var;

// verringert den Wert von $var um 1
$var--;
// gibt 110 aus
echo $var;

// Kurzformen für mathematische Operationen
// äquivalent zu: $var = $var + 5
$var += 5;
// äquivalent zu: $var = $var - 2
$var -= 2;
// äquivalent zu: $var = $var * 2
$var *= 2;
// äquivalent zu: $var = $var / 4
$var /= 4;
?>

Erklärung:

Der obige PHP-Code zeigt verschiedene mathematische Operationen mit Variablen. Zunächst werden zwei Variablen definiert und dann miteinander multipliziert. Das Ergebnis wird in der Variable $var gespeichert. Anschließend wird der Wert durch Inkrement- und Dekrement-Operatoren sowie durch kombinierte Zuweisungsoperatoren verändert.

Variablen-Gültigkeitsbereiche (Scopes)

In PHP gibt es verschiedene Gültigkeitsbereiche für Variablen:

  • Lokale Variablen - nur innerhalb einer Funktion gültig
  • Globale Variablen - im gesamten Skript verfügbar, aber nicht in Funktionen
  • Statische Variablen - behalten ihren Wert über mehrere Funktionsaufrufe
  • Parameter - werden an Funktionen übergeben
<?php
// globale Variable
$global_var = "Ich bin global";

function test() {
    // lokale Variable
    $local_var = "Ich bin lokal";

    // Zugriff auf globale Variable
    global $global_var;

    // gibt "Ich bin global" aus
    echo $global_var;
    // gibt "Ich bin lokal" aus
    echo $local_var;

    // statische Variable
    static $count = 0;
    // erhöht sich bei jedem Aufruf
    $count++;
    echo $count;
}
// Funktionsaufruf
test();
// echo $local_var;
/* Fehler! $local_var ist außerhalb nicht verfügbar */

/* Alternative Zugriffsmethode auf globale Variablen */
// gibt "Ich bin global" aus
echo $GLOBALS['global_var'];
?>

Einen besonderen Stellenwert im Bereich der Variablen nehmen die sogenannten Arrays (Felder) ein.

Ein Beispiel verdeutlicht den Gebrauch für mehrdimensionale Felder:

<?php
$fruechte  = array ( "früchte" => array("a" => "orange", "b" => "banane", "c" => "apfel"),
 "nummern" => array(1, 2, 3, 4, 5, 6),
"var"=> array("erstes", 5 => "zweites", "drittes")
);
?>

Das Array $fruechte hat nun ein internes Feld mit dem Namen „fruechte“ mit den Elementnamen „a“ „b“ und „c“ wobei „a“ die Zeichenfolge „orange“ speichert, äquivalent „b“ „banane“, sowie „c“ „apfel“.

Die Zuweisung geschieht durch den Operator „=>“. PHP kann im Gegensatz zu anderen Sprachen Arrays mit assoziativen Feldnamen verwenden, dies erleichtert das Verständnis und die übersichtlichkeit des Quelltextes erheblich.

Die zweite Zeile legt im Array $früchte ein weiteres Feld mit dem Namen „nummern“ an. In diesem Feld werden die Zahlen 1 - 6 nacheinander in nummerisch aufsteigend nummerierte Felder abgelegt. Zu beachten ist hier das nicht explizit array(0=>1,1=>2,.... 5=>6), geschrieben werden muss, sondern die oben gewählte Kurzform vollkommen ausreichend ist.

Bei numerisch aufsteigender Durchnummerierung der Felder ist zu beachten, dass beim Index 0 begonnen wird. Ein Array mit zehn Feldern hat also die Indizes von 0 bis 9. Dieser Umstand, dass diese Zählweise für Menschen ungewöhnlich ist, birgt eine beliebte Fehlerquelle. Diese Art von Fehlern ist mitunter schwer zu finden.

Die dritte Zeile im Beispiel benutzt eine Kombination aus den beiden anderen Methoden. Im Feld „var“ liegt im Feld 0 der String „erstes“, im Feld 5 der String „zweites“ und im Feld 6 wird „drittes“ als Zeichenfolge abgelegt. Wie auch bei normalen Variablen sind Arrays nicht typisiert, was bedeutet, es können verschiedene Speichertypen verwendet werden.

Beabsichtigt man ein bestimmtes Element eines Arrays abzufragen oder dessen Inhalt ändern, geschieht das in der Form, dass das entsprechende Feld direkt angesprochen wird.

<?php
$arraname=array();
$feldindex=5;
/**
* Speichert den String „ein kleiner text“ im Array $arrayname im Feld mit dem Index 5
*/
$arrayname[$feldindex]="ein kleiner text";
echo $arrayname[$feldindex]; /* Ausgabe: ein kleiner text */
?>


Dieses Beispiel verdeutlicht, dass auch Variablen selbst als Indexname für ein Array Verwendung finden können. Jedoch sollte man auf Gleitkommazahlen verzichten.

Das Fehlen von typisierten Variablen kann es erforderlich machen, dass man prüfen will, ob eine Variable vom Inhalt her einem bestimmten Typen entspricht. Für diesen Fall bietet PHP einige Funktionen an, allen Funktionen ist gemein, dass sie im Fall das die Variable dem abgefragten Typen entspricht, eine 1 als Rückgabewert liefern.

  • is_arrayPrüft, ob die Variable ein Array ist
  • is_boolPrüft, ob eine Bool Variable vorliegt (Bool kann nur 0 oder 1 annehmen)
  • is_double – Alias von is_float
  • is_float – Prüft, ob eine Gleitkommazahl vorliegt
  • is_int – Prüft auf Ganzzahl (Int oder Integer)
  • is_integer – Alias von is_int()
  • is_long – Alias von is_int() (als long bezeichnet man vorzeichenlose Ganzzahlen)
  • is_null – Prüft, ob ein NULL vorliegt
  • is_numeric – Prüft, ob die Variable einen Zahlenwert oder einen Zeichenstring speichert
  • is_real – Alias von is_float()
  • is_string – Prüft, ob ein String vorliegt
  • is_unicode – Prüft, ob ein String im Unicode Standard vorhanden ist

Diese Liste ist nicht vollständig, sollte es aber ermöglichen auf die am häufigsten verwendeten Variablentypen zu prüfen.

Eine kurze Liste der gebräuchlichsten Variablentypen:

  • Int oder Integer – Ganzzahl mit Vorzeichen
  • Long oder long int – Ganzzahl ohne Vorzeichen (nur positiv)
  • Float – Gleitkommazahl
  • Double – Gleitkommazahl (doppelte Genauigkeit)
  • Char – Charakter oder allgemein alphanumerische Zeichen
  • String – Zeichenkette aus Charaktern

Bei den Variablen, die einen reinen Zahlenwert darstellen, richtet sich die Ober- und Untergrenze nach dem verwendeten Betriebssystem und der CPU Struktur.

Sie können auch die Variablen dynamisch erstellen. Hierzu können Sie sich das Tutorial „Dynamische Variablen in PHP“ ansehen.




weiter Text ausgeben mit Php

Bücherregal mit drei Büchern: 'PHP 4 - Grundlagen und Profiwissen' von Hanser Verlag, 'Webdesign in a Nutshell' von O'Reilly Verlag, und 'Webgestaltung' von Galileo Computing.