W języku PHP informacja, czy funkcja zwraca wartość, wynika z tego, czy w jej ciele użyto instrukcji return wraz z wyrażeniem (np. liczba, tekst, wynik obliczeń, tablica, obiekt). Taki return:
- kończy wykonywanie funkcji w danym miejscu,
- przekazuje obliczoną wartość do kodu, który funkcję wywołał,
- pozwala użyć wywołania funkcji w wyrażeniach (np. przypisaniu, konkatenacji, porównaniu).
Odpowiedź "nie zwraca wartości" byłaby poprawna wtedy, gdyby w funkcji nie było instrukcji return z wyrażeniem. W praktyce funkcja bez takiego zwrotu nie przekazuje sensownego wyniku (często jest to null), co jest częstym źródłem błędów w aplikacjach WWW.
Odpowiedź "pobiera dwa parametry z domyślną wartością" dotyczy czegoś innego: wartości domyślne wynikają wyłącznie z definicji parametrów (np. $x = 1) w nagłówku funkcji. Sama obecność return nie oznacza jeszcze, że parametry mają wartości domyślne.
Odpowiedź "jest zdefiniowana z dwoma parametrami rzeczywistymi" jest terminologicznie myląca. W programowaniu rozróżnia się:
- parametry (formalnie) – w definicji funkcji,
- argumenty (rzeczywiste) – w wywołaniu funkcji.
Dlatego cecha "parametry rzeczywiste" odnosi się do miejsca wywołania, a nie do samej definicji. Na egzaminie zwracaj uwagę, czy pytanie dotyczy definicji funkcji (parametry formalne i ich wartości domyślne), czy jej działania (zwracanie wartości przez return).