lo que pasa es que
estás imprimiendo el retorno de la función y no la variable:
Código PHP:
Ver originalfunction prueba2(&$otra_variable_interna) {
$otra_variable_interna="Variable dentro de la función";
return $otra_variable_interna;
}
$otra_variable_externa="Variable fuera de la función";
echo "<p>retorno= ".prueba2($otra_variable_externa).' original='.$otra_variable_externa."</p>";
nota que en este caso la variable
$otra_variable_externa en este caso si tomó el valor modificad por la función, en cambio si quitas el operador de referencia (&), la misma conserva su valor.