Funkcja PHP Array_Reduce

Funkcja PHP Array_Reduce
PHP ma wiele wbudowanych funkcji do pracy ze zmiennymi tablicowymi. array_rereduce () Funkcja jest jedną z wbudowanych funkcji PHP w celu zmniejszenia wartości tablicy do jednej wartości za pomocą funkcji wywołania zwrotnego. Ta funkcja jest przydatna przy generowaniu treści poprzez połączenie tablicy wartości na podstawie wymagań. Składnia tej funkcji podano poniżej.

Składnia:

Mixed Array_Reduce (array $ array, callable $ callback [, mixed $ inicial = null])

Pierwszy argument jest obowiązkowe, które wymaga tablicy, a wyjście zostanie zwrócone na podstawie wartości tej tablicy.

Drugi argument jest obowiązkowe, które określa nazwę funkcji wywołania zwrotnego, a ta funkcja zostanie użyta do generowania pojedynczego wyjścia za pomocą wartości tablicy.

Trzeci argument jest opcjonalnie i służy do ustawiania wartości początkowych do pracy z wartościami tablicy. Domyślna wartość tego argumentu jest null.

Funkcja powróci pojedyncze wyjście, które może być ciągiem, liczbą całkowitą lub pływakiem. Jeśli tablica jest pusta, zwróci wartość początkową używaną w trzecim argumencie.

Array_Reduce () Przykłady funkcji

Zastosowania funkcji Array_Reduce () zostały pokazane w następnej części tego samouczka za pomocą wielu przykładów.

Przykład-1: użycie funkcji Array_Reduce () bez wartości początkowej

Utwórz plik PHP z następującym skryptem, aby wygenerować ciąg, łącząc wartości tablicy z przestrzenią. Nazwana funkcja wywołania zwrotnego callback_function () został zdefiniowany do użycia w funkcji Array_Reduce () wykonaj zadanie. W skrypcie zadeklarowano tablicę 4 wartości. Funkcja array_rereduce () została tu używana bez żadnej wartości początkowej. Tak więc wartość domyślna, zero, zostanie użyte do wygenerowania wyjścia funkcji Array_Reduce ().

// zadeklaruj funkcję wywołania zwrotnego
funkcja Callback_function ($ v1, $ v2)

// Połącz wartości z przestrzenią
$ v .= $ v1.„”.$ v2;
// Zwróć wartość łączącą
zwrot $ v;

// zadeklaruj tablicę danych ciągu
$ array = array („i”, „jak”, „php”, „programowanie”);
Echo "Wyjście funkcji Array_Reduce () bez wartości początkowej:
";
// Wydrukuj zwróconą wartość funkcji Array_Reduce ()
echo array_rereduce ($ array, „callback_function”);
?>

Wyjście:

Po wykonaniu powyższego skryptu pojawi się następujące dane wyjściowe.

Przykład-2: Użyj funkcji Array_Reduce () o wartości początkowej

Utwórz plik PHP z następującym skryptem, aby wygenerować ciąg, łącząc wartości tablicy z przecinkiem (,). Nazwana funkcja wywołania zwrotnego callback_function () został zdefiniowany do użycia w funkcji Array_Reduce () wykonaj zadanie. W skrypcie zadeklarowano tablicę 5 wartości. Funkcja Array_Reduce () została tutaj użyta z wartością początkową, „php”, który wygeneruje wyjście funkcji Array_Reduce ().

// zadeklaruj funkcję wywołania zwrotnego
funkcja callback_function ($ value1, $ value2)

zwrócić wartość $1 . "," . $ value2;

// zadeklaruj tablicę danych ciągu
$ array = array („Python”, „perl”, „bash”, „java”, „c ++”);
Echo "Wyjście funkcji Array_Reduce () o wartości początkowej:
";
echo array_rereduce ($ array, „callback_function”, „php”);
?>

Wyjście:

Po wykonaniu powyższego skryptu pojawi się następujące dane wyjściowe.

Przykład-3: Oblicz sumę wszystkich dodatnich liczb tablicy

Utwórz plik PHP z następującym skryptem, aby obliczyć sumę wszystkich dodatnich liczb tablicy. Nazwana funkcja wywołania zwrotnego callback_function () został zdefiniowany do użycia w funkcji Array_Reduce () wykonaj zadanie. W skrypcie zadeklarowano szereg 7 liczb, który zawiera 4 liczby dodatnie. Funkcja Array_Reduce () została tutaj użyta z wartością początkową, 0, i ta wartość zostanie użyta do generowania wyjścia funkcji Array_Reduce ().

// zadeklaruj funkcję wywołania zwrotnego
funkcja Callback_function ($ v1, $ v2)

if ($ v2> 0)
$ v1 += $ v2;
Zwrot $ v1;

// deklaruj szereg liczb dodatnich i ujemnych
$ array = tablica (9, -5, 3, -7, 1, 7, -4);
Echo "Wartości tablicy to:
";
// Wydrukuj wartości tablicy
print_r ($ array);
Echo "
Suma wszystkich dodatnich liczb to:
";
// Wydrukuj sumę wszystkich dodatnich liczb tablicy
echo array_rereduce ($ array, „callback_function”, 0);
?>

Wyjście:

Po wykonaniu powyższego skryptu pojawi się następujące dane wyjściowe. Suma 9, 3, 1 i 7 wynosi 20, pokazana na wyjściu.

Przykład-4: pomnóż wartości tablicy

Utwórz plik PHP z następującym skryptem, który obliczy wynik mnożenia wartości numerycznych tablicy. Żadna funkcja wywołania zwrotnego nie została zadeklarowana osobno w skrypcie, a funkcja pojedynczej instrukcji została użyta w funkcji Array_Reduce () do przeprowadzenia mnożenia. W skrypcie zadeklarowano szereg 4 liczb. Funkcja Array_Reduce () została tutaj użyta z wartością początkową, 1, i ta wartość zostanie użyta do generowania wyjścia funkcji Array_Reduce ().

// zadeklaruj szereg liczb
$ array = tablica (4, 5, 3, 5);
// pomnóż wartości tablicy
$ mnoply = array_rereduce ($ array, fn ($ v1, $ v2) => $ v1 * $ v2, 1);
Echo "Wartości tablicy to:
";
// Wydrukuj wartości tablicy
print_r ($ array);
Echo "
Wartość mnożenia wszystkich elementów tablicy wynosi:
";
echo $ mnożyć;
?>

Wyjście:

Po wykonaniu powyższego skryptu pojawi się następujące dane wyjściowe. Wynik mnożenia 4, 5, 3 i 5 wynosi 300, pokazany na wyjściu.

Przykład-5: użycie array_rereduce () w dwuwymiarowej tablicy

Utwórz plik PHP z następującym skryptem, aby obliczyć sumę trzech wartości liczbowych tablicy dwuwymiarowej za pomocą funkcji Array_Reduce (). Żadna funkcja wywołania zwrotnego nie została zadeklarowana osobno w skrypcie, jak w poprzednim przykładzie, a funkcja z wieloma instrukcjami została użyta w funkcji Array_Reduce (), aby wykonać podsumowanie.

// zadeklaruj dwuwymiarową tablicę
$ studenci = [
[„Nazwa” => „Rakib Hossain”, „Physics” => 90, „Chemistry” => 75, „Math” => 95],
[„Nazwa” => 'Neela Akter', „Physics” => 67, „Chemistry” => 81, „Math” => 78],
[„Nazwa” => „Kabir Hasan”, „Physics” => 71, „Chemistry” => 55, „Math” => 74],
[„Nazwa” => „Mizanur Rahman”, „Physics” => 70, „Chemistry” => 82, „Math” => 89]
];
// Wydrukuj całkowitą oceny każdego ucznia za pomocą funkcji Array_Reduce ()
$ total = array_rereduce (
$ studenci,
funkcja ($ init = 0, $ val)
// Oblicz sumę wszystkich osób
$ sum = $ val [„Physics”] + $ val ['chemistry'] + $ val [„matematyka '];
// Wydrukuj znaki o nazwie
echo $ val ['nazwa']."ma".$ sum." znaki.
";
zwrot 1;

);
?>

Wyjście:

Po wykonaniu powyższego skryptu pojawi się następujące dane wyjściowe.

Wniosek

W przykładach tego samouczka pokazano różne sposoby korzystania z funkcji Array_Reduce ().