Zmienne dostarczane jako argumenty funkcji są klonowane, nie są przekazywane ich wskaźniki.
Tutaj masz info z manuala dokładnie z Twoim przykładem:
http://php.net/manual/en/language.references.pass.phpBTW Doczytaj 'Note'.
Generalnie jednak pisany w ten sposób kod jest bardzo słabo czytelny. Sugeruję takie rozwiązanie:
<?php
$liczba=2;
function zwiekszliczbe($liczba)
{
return ++$liczba;
}
function wyswietlliczbe($liczba)
{
}
wyswietlliczbe($liczba);
$liczba = zwiekszliczbe($liczba);
wyswietlliczbe($liczba);
?>