PHP: scambiare i valori di due variabili

PHP: scambiare i valori di due variabiliUna delle prime cose che si impara quando si inizia a programmare è come scambiar il valore di due variabili.

Sembra una cosa banale e lo diventerà appena capito il trucco, ma portebbe non risultare così naturale al programmatore neofita.

Ora noi vedremo come si ottiene questo risultato usando il php, ma è ovvio che il modo di operare è uguale per tutti i linguaggi.

Per prima cosa vediamo cosa succede utilizzando il metodo che molto spesso è il primo a venire in mente.
Questo metodo “impulsivo” consiste nello scambiare le variabili sequenzialmente:

$var1=1;
$var2=7;
//metodo sbagliato
$var1=$var2;
$var2=$var1;


In questo modo sia $var1 che $var2 varranno 7, infatti prima a $var1 assegamo il valore di $var2 cioè 7, e poi a $var2 quello di $var1 cioè 7.
Il fatto che il risultato è sbagliato dovrebbe suggerirci che il metodo da utilizzare è un altro.

Infatti abbiamo bisogno di un’altra variabile, la cosiddetta variabile d’appoggio (mitico oggetto dell’informatica la cui fama raggiunge quasi quella di pippo), ecco quindi come si risolve l’annoso problema:

$var1=1;
$var2=7;
//metodo giusto
$app=$var1
$var1=$var2;
$var2=$app;

Se eseguite il codice mentalmente vi rendete conto che $var1 vale 7 e $var2=1, il risultato in questo caso è corretto.
A questo punto ringraziamo $app e scambiamo i valori in completa sicurezza!