When you create a reference using &$var, the variable you assign it to holds the value of $var and becomes a new "route" for assigning new values to $var:
$firstVar = 'nice day!';
/*
* $secondVar is initalised with the value of $firstVar (as normal, when the & is not used).
* Placing the & in front of $firstVar creates a reference, meaning that now when you type $secondVar,
* it's the same as typing $firstVar. The only difference, being that the value is still being applied to
* $secondVar along with $firstVar.
*/
$secondVar = &$firstVar; //$secondVar now equals "nice day!"
$secondVar = "Have a $secondVar"; //Gives $secondVar "Have a nice day!" (as it's a reference to $firstVar, that value also changes)
/*
* The following 2 lines have the exact same result as the single line above
* whether the & was used or not
*/
$firstVar = "Have a $secondVar";
$secondVar = "Have a $secondVar";
If you think of a 'reference' variable being set, as 2 separate commands it should be easier to think of the process in which it is done.