Php array_reduce -funksjon

Php array_reduce -funksjon
PHP har mange innebygde funksjoner for å jobbe med matrisevariablene. De Array_Reduce () Funksjon er en av de innebygde funksjonene til PHP for å redusere matriseverdiene til en enkelt verdi ved å bruke en tilbakeringingsfunksjon. Denne funksjonen er nyttig når du genererer innhold ved å kombinere en rekke verdier basert på kravene. Syntaksen til denne funksjonen er gitt nedenfor.

Syntaks:

Mixed Array_Reduce (Array $ Array, Callable $ Callback [, Mixed $ initial = NULL])

Det første argumentet er obligatorisk som tar en matrise, og utdataene vil bli returnert basert på denne matrisens verdier.

Det andre argumentet er obligatorisk, som definerer navnet på tilbakeringingsfunksjonen, og denne funksjonen vil bli brukt til å generere enkeltutgangen ved å bruke arrayverdier.

Det tredje argumentet er valgfritt, og det brukes til å stille inn de opprinnelige verdiene for å fungere med matriseverdier. Standardverdien for dette argumentet er null.

Funksjonen kommer tilbake en enkelt utgang som kan være en streng, heltall eller flyte. Hvis matrisen er tom, vil den returnere den opprinnelige verdien som brukes i det tredje argumentet.

Array_Reduce () Funksjonseksempler

Bruken av array_reduce () -funksjonen er vist i neste del av denne opplæringen ved å bruke flere eksempler.

Eksempel-1: Bruk av array_reduce () -funksjon uten startverdi

Lag en PHP -fil med følgende skript for å generere en streng ved å kombinere matriseverdiene med plassen. Tilbakeringingsfunksjonen som heter callback_function () har blitt definert for å bruke inne i array_reduce () -funksjonen gjør oppgaven. En rekke 4 strengverdier er blitt erklært i skriptet. Array_reduce () -funksjonen har blitt brukt her uten noen startverdi. Så standardverdien, null, vil bli brukt til å generere utdataene fra array_reduce () -funksjonen.

// erklære tilbakeringingsfunksjonen
funksjon callback_function ($ v1, $ v2)

// kombinere verdiene med plass
$ v .= $ v1."".$ v2;
// Returner kombinasjonsverdien
Returner $ V;

// erklære rekke strengdata
$ array = array ('i', 'som', 'php', 'programmering');
ekko "Utgangen fra array_reduce () -funksjonen uten startverdi:
";
// Skriv ut den returnerte verdien av array_reduce () -funksjonen
ekko array_reduce ($ array, "callback_function");
?>

Produksjon:

Følgende utdata vises etter å ha utført skriptet ovenfor.

Eksempel-2: Bruk av array_reduce () -funksjon med startverdi

Opprett en PHP -fil med følgende skript for å generere en streng ved å kombinere matriseverdiene med komma (,). Tilbakeringingsfunksjonen som heter callback_function () har blitt definert for å bruke inne i array_reduce () -funksjonen gjør oppgaven. En rekke 5 strengverdier er blitt erklært i skriptet. Array_reduce () -funksjonen har blitt brukt her med den opprinnelige verdien, 'php', som vil generere utgangen fra array_reduce () -funksjonen.

// erklære tilbakeringingsfunksjonen
funksjon callback_function ($ verdi1, $ verdi2)

Returner $ verdi1 . "," . $ verdi2;

// erklære rekke strengdata
$ array = array ('python', 'perl', 'bash', 'java', 'c ++');
ekko "Utgangen fra array_reduce () -funksjonen med startverdi:
";
ekko array_reduce ($ array, "callback_function", 'php');
?>

Produksjon:

Følgende utdata vises etter å ha utført skriptet ovenfor.

Eksempel-3: Beregn summen av alle positive antall av matrisen

Opprett en PHP -fil med følgende skript for å beregne summen av alle positive antall av matrisen. Tilbakeringingsfunksjonen som heter callback_function () har blitt definert for å bruke inne i array_reduce () -funksjonen gjør oppgaven. En rekke 7 tall er blitt erklært i skriptet som inneholder 4 positive tall. Array_reduce () -funksjonen har blitt brukt her med den opprinnelige verdien, 0, og denne verdien vil bli brukt til å generere utdataene fra array_reduce () -funksjonen.

// erklære tilbakeringingsfunksjonen
funksjon callback_function ($ v1, $ v2)

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

// erklære rekke positive og negative tall
$ Array = Array (9, -5, 3, -7, 1, 7, -4);
ekko "Array -verdiene er:
";
// Skriv ut arrayverdiene
print_r ($ array);
ekko "
Summen av alle positive tall er:
";
// Skriv ut summen av alle positive antall av matrisen
ekko array_reduce ($ array, "callback_function", 0);
?>

Produksjon:

Følgende utdata vises etter å ha utført skriptet ovenfor. Summen av 9, 3, 1 og 7 er 20, vist i utgangen.

Eksempel-4: Multipliser arrayverdiene

Opprett en PHP -fil med følgende skript som vil beregne multiplikasjonsresultatet av de numeriske verdiene til matrisen. Ingen tilbakeringingsfunksjoner er blitt erklært separat i skriptet, og funksjonen til en enkelt uttalelse har blitt brukt i array_reduce () -funksjonen for å gjøre multiplikasjonen. En rekke 4 tall er blitt erklært i skriptet. Array_reduce () -funksjonen har blitt brukt her med den opprinnelige verdien, 1, og denne verdien vil bli brukt til å generere utdataene fra array_reduce () -funksjonen.

// erklære antallet tall
$ Array = Array (4, 5, 3, 5);
// multiplisere matriseverdiene
$ multiply = array_reduce ($ array, fn ($ v1, $ v2) => $ v1 * $ v2, 1);
ekko "Array -verdiene er:
";
// Skriv ut arrayverdiene
print_r ($ array);
ekko "
Multiplikasjonsverdien for alle elementene i matrisen er:
";
ekko $ multipliser;
?>

Produksjon:

Følgende utdata vises etter å ha utført skriptet ovenfor. Multiplikasjonsresultatet av 4, 5, 3 og 5 er 300, vist i utgangen.

Eksempel-5: Bruk av array_reduce () i todimensjonal matrise

Lag en PHP-fil med følgende skript for å beregne summen av tre numeriske verdier av en todimensjonal matrise ved hjelp av array_reduce () -funksjonen. Ingen tilbakeringingsfunksjoner er blitt erklært separat i skriptet som i forrige eksempel, og funksjonen med flere utsagn har blitt brukt i array_reduce () -funksjonen for å gjøre summeringen.

// erklære en todimensjonal matrise
$ studenter = [
['Navn' => 'Rakib Hossain', 'Physics' => 90, 'Chemistry' => 75, 'Math' => 95],
['Navn' => 'Neela Akter', 'Physics' => 67, 'Chemistry' => 81, 'Math' => 78],
['Navn' => 'Kabir Hasan', 'Physics' => 71, 'Chemistry' => 55, 'Math' => 74],
['Navn' => 'Mizanur Rahman', 'Physics' => 70, 'Chemistry' => 82, 'Math' => 89]
];
// Skriv ut de totale merkene til hver student ved hjelp av array_reduce () -funksjonen
$ total = array_reduce (
$ studenter,
funksjon ($ init = 0, $ val)
// Beregn summen av alle fag
$ sum = $ val ['fysikk'] + $ val ['kjemi'] + $ val ['matematikk'];
// Skriv ut merkene med navnet
ekko $ val ['name']."har fått".$ sum."Merker.
";
retur 1;

);
?>

Produksjon:

Følgende utdata vises etter å ha utført skriptet ovenfor.

Konklusjon

Ulike måter å bruke array_reduce () -funksjonen har blitt vist i eksemplene på denne opplæringen for å hjelpe PHP -brukere til å kjenne bruken av denne funksjonen riktig.