Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Sprachelemente und Syntax  Teil von  Operatoren
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++



:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
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.



 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


© 2001-2009 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt