Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Sprachelemente und Syntax  Teil von  Operatoren
Letztes Update: 04.09.2007 20:49:50

Navigation

Seite Startseite
Seite Aktuelles
Seite Seite News*
Seite Seite Pressemitteilungen*
Seite SELFPHP
Seite Seite Über SELFPHP
Seite Seite Werbung
Seite Seite Kontakt
Seite Seite Unsere Banner
Seite Seite Impressum
Seite Qozido
Seite Seite Diving Edition
Seite Seite Snorkeling Edition
Seite SELFPHP Dokumentation
Seite Seite PHP-Skripte
Seite Seite PHP Befehlsreferenz
Seite Seite PHP 5 Praxisbuch
Seite Seite PHP Code Snippets
Seite Seite SELFPHP in Buchform
Seite Anbieterverzeichnis
Seite Seite Globale Branchen
Seite Seite Webhosting/Server
Seite Services
Seite Seite Forum*
Seite Seite RSS-Feeds*
Seite Seite Downloads*
Seite Seite Gratis-Video-Lektionen*
Seite Seite SELFPHP auf Heft-CD*
Seite Seite Newsletter*
Seite Internet Security
 sponsored by  
Seite Stellenangebote*
Sedo - Bei uns wird PHP großgeschrieben
Seite Premium-Partner   
Webhosting/Serverlösungen
Seite Produktempfehlung   
Seite Seite SteadyBackup

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  
 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 100.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 




 

Zuweisungsoperator




Wie Sie bereits im Abschnitt zu den Variablen gesehen haben, wird in PHP (=) dazu verwendet, um einer Variablen einen Wert zuzuweisen.

Beispiel

$vorname = "Matze";

Auch wenn man eine solche PHP-Zeile nicht als Ausdruck ansieht, der ausgewertet werden kann und einen Wert hat, handelt es sich doch wirklich um einen Ausdruck. Technisch gesehen ist (=) ein Operator. Der Operator (=) erwartet als linken Operanden eine Variable. Als rechter Operand wird ein beliebiger Wert eines beliebigen Typs erwartet. Der Wert eines Zuweisungsausdrucks ist der Wert des rechten Operanden. Da (=) als Operator definiert ist, kann er auch als Bestandteil komplexerer Ausdrücke verwendet werden.

Beispiel

$zahlEins = 200;
$zahlZwei = 250;
$pruefen = zahlEins == zahlZwei; // Ergebnis: false

Hinweis: Wenn Sie so etwas verwenden wollen, sollte Ihnen vorher der Unterschied zwischen den Operatoren (=) und (==) vollkommen klar sein.

Der Zuweisungsoperator ist von rechts nach links assoziativ, das bedeutet, dass bei mehreren Zuweisungsoperatoren innerhalb eines einzigen Ausdrucks von rechts nach links ausgewertet wird. Als Folge davon kann man Code wie den folgenden schreiben, um mehreren Variablen jeweils denselben Wert zuzuweisen.

Beispiel

// Initialisierung mehrerer Variablen in einem Ausdruck
$i = $j = $k = 100;


Zuweisung mit Operation

Neben dem Zuweisungsoperator (=) unterstützt PHP noch eine Reihe weiterer Zuweisungsoperatoren, die eine Kurzform bzw. Kurznotation dafür darstellen, dass eine Zuweisung mit einer anderen Operation verbunden wird.

Beispiel

// Initialisierung
$preis = 10.00;
$mwst = 1.60;
// Kurzform
$preis += $mwst; // Ergebnis: 11.6
// Gleichbedeutend
$preis = $preis + $mwst // Ergebnis: 11.6

Entsprechend gibt es auch -=, *=, /=, %= usw.

Beispiel

// Initialisierung
$zahlEins = 50;
$zahlZwei = 25;

// Kurzformen
$zahlEins += $zahlZwei; // Ergebnis: 75
$zahlEins -= 5; // Ergebnis: 70
$zahlEins *= 2; // Ergebnis: 140
$zahlZwei /= 5; // Ergebnis: 5
$zahlZwei %= 2; // Ergebnis: 1

Abschließend eine Übersicht über die Zuweisungsoperatoren in PHP.


OperatorBezeichnungBedeutung
=Einfache Zuweisung$a = $b weist $a den Wert von $b zu und liefert $b als Rückgabewert.
+=Additionszuweisung$a += $b weist $a den Wert von $a + $b zu und liefert $a + $b als Rückgabewert.
-=Subtraktionszuweisung$a -= $b weist $a den Wert von $a – $b zu und liefert $a – $b als Rückgabewert.
*=Multiplikationszuweisung$a *= $b weist $a den Wert von $a * $b zu und liefert $a * $b als Rückgabewert.
%=Modulozuweisung$a %= $b weist $a den Wert von $a % $b zu und liefert $a % $b als Rückgabewert.
/=Divisionszuweisung$a /= $b weist $a den Wert von $a / $b zu und liefert $a / $b als Rückgabewert.
.=Zeichenkettenzuweisung$a .= $b weist $a den Wert von $a . $b zu und liefert $a . $b als Rückgabewert.


Zuweisung »by reference«

Im Zusammenhang mit Zuweisungen ist noch ein wichtiger Punkt zu beachten:

Bei den bisher betrachteten Zuweisungen wird der Wert einer Variablen einer anderen Variablen zugewiesen. Es existieren also zwei unterschiedliche Variablen und somit auch zwei unterschiedliche Speicherbereiche, die nach der erfolgten Zuweisung zwar denselben Wert aufweisen, aber ansonsten völlig unabhängig voneinander im Arbeitsspeicher existieren. Diese Zuweisungsart wird auch als Zuweisung »by value« bezeichnet.

Seit PHP 4 steht Ihnen jedoch noch eine weitere Form der Zuweisung zur Verfügung, bei der nach erfolgter Zuweisung beide Variablen auf denselben Speicherbereich verweisen. In diesem Zusammenhang spricht man auch von Zuweisungen »by reference«. Wenn Sie Zuweisungen »by reference« vornehmen, weisen Sie also nicht einer Variablen den Wert einer anderen zu, sondern einer Variablen den Speicherbereich einer anderen, sodass im Ergebnis jetzt beide Variablen auf denselben Speicherbereich verweisen und somit nur noch eine Variable existiert, die allerdings zwei unterschiedliche Variablennamen besitzt.

Beispiel

<?
$vorname = "Matthias";
$meinname = &$vorname;
// Ausgabe – Matthias
echo $meinname;
// Ausgabe – Matthias
echo $vorname;
$vorname = "Caroline";
// Ausgabe – Caroline
echo $meinname;
// Ausgabe – Caroline
echo $vorname;
$meinname = "Gülten";
// Ausgabe – Gülten
echo $meinname;
// Ausgabe – Gülten
echo $vorname;
?>

OperatorBezeichnungBedeutung
$a = &$bZuweisung »by reference«Der Speicherbereich der Variablen $a wird auf den Speicherbereich der Variablen $b gesetzt.



 




 sponsored by

Sedo - Bei uns wird PHP großgeschrieben


VERIO - An NTT Communications Company


HighText iBusiness


Webspace-Verkauf.de


video2brain




 Premium-Partner
 Webhosting/Serverlösungen

BPI-Systeme


Premium-Partner Pixel X


Premium-Partner First Colo


Premium-Partner dogado Internet




Qozido


© 2001-2008 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt