Może już miałeś okazję zobaczyć w kodzie ..$… i zastanawiałeś się jak to działa?
W PHP, argument „…$zmienna” oznacza, że funkcja może przyjąć dowolną liczbę argumentów, które zostaną zapisane w tablicy o nazwie „zmienna”. Można następnie np. odwołać się do nich wewnątrz funkcji, używając indeksów tablicy. Jest to tzw. „zmiennej liczby argumentów” (ang. variable-length arguments) lub „zmiennej ilości argumentów”.
Zmienna liczba argumentów została wprowadzona w PHP 5.6 jako część tzw. „argument unpacking”. Jednakże, w pełni funkcjonalna składnia ...$zmienna
została dodana w PHP 7.0.
Poniżej prosty przykład użycia zmiennej liczby argumentów w php:
function sum(...$nums) { $sum = 0; foreach ($nums as $num) { $sum += $num; } return $sum; } echo sum(1, 2, 3); // wyświetli "6" echo sum(4, 5, 6, 7); // wyświetli "22"
W powyższym przykładzie funkcja sum
przyjmuje zmienną liczbę argumentów i sumuje je. Argumenty są przechowywane w tablicy $
nums, którą przetwarzamy za pomocą pętli foreach
.
Funkcja zwraca sumę wszystkich argumentów.
oraz inny przykład:
function add($a, $b) { return $a + $b; } echo add(...[1, 2])."\n"; $a = [1, 2]; echo add(...$a);
Co będzie wynikiem tego przykładu? Napisz w komentarzu.
Nikt jeszcze nie komentował. Bądź pierwszy!