PHP Variablen in einer Funktion tauschen

vogti

Cadet 2nd Year
Registriert
Feb. 2008
Beiträge
23
Hallo,

mit dem folgenden Code-Schnipsel will ich einfach nur die Werte der beiden Variablen a und b tauschen. b soll den Wert von a erhalten und umgekehrt. Leider habe ich scheinbar noch nicht ganz verstanden, wie Funktionen funktionieren, bzw. wie ich deren Werte zurückgebe...
Warum wird mit der letzten Zeile nicht "20 10" ausgegeben?
PHP:
<?php
$a=10;
$b=20;

print $a.' '.$b.'<br />';

function tausche($e1, $e2) {

  $hilfe=$e1;
  $e1=$e2;
  $e2=$hilfe;

}

tausche($a, $b);

print $a.' '.$b.'<br />';
?>

lg,
vogti
 
Die Lösung: Referenz. Die Variablen e1 und e2 müssen mittels & als Referenz deklariert werden, damit die Änderung übernommen wird. Die korrekte Zeile:
PHP:
function tausche(&$e1, &$e2)
 
Zurück
Oben