Instrukcja return w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

return służy do zwracania wartości z funkcji oraz zakończenia jej wykonywania. Jest to ważne rozróżnienie: funkcja z return nie musi nic wypisywać na ekranie, tylko przekazuje wynik do miejsca, w którym została wywołana.

Jak działa return?

Po napotkaniu instrukcji return PHP natychmiast kończy działanie funkcji i oddaje wskazaną wartość.

function fun1($liczba) {
    if ($liczba % 2 == 0)
        return 1;

    return 0;
}

W tym przykładzie:
- $liczba % 2 oblicza resztę z dzielenia przez 2,
- jeśli reszta wynosi 0, liczba jest parzysta,
- funkcja zwraca wtedy 1,
- w przeciwnym razie zwraca 0.

return a wypisywanie

return nie jest tym samym co echo lub print.

echo fun1(8); // wypisze 1, bo echo wyświetla wartość zwróconą przez funkcję

Sama funkcja fun1(8) tylko zwraca wartość. Dopiero użycie echo, print albo przypisanie wyniku do zmiennej pozwala tę wartość wykorzystać.

$wynik = fun1(7); // $wynik ma wartość 0

Typowy błąd egzaminacyjny

Jeżeli w funkcji występuje return 1, nie oznacza to automatycznie „wypisz 1”. Poprawna interpretacja brzmi: zwróć wartość 1. W zadaniach egzaminacyjnych trzeba odróżniać funkcje zwracające wynik od instrukcji wyświetlających dane.