Syntaks:
for hver loop kan bare brukes til å lese arrayverdiene eller begge tastene og verdiene til arrayet.
Følgende for hver loop brukes til å lese elementverdiene til en matrise. Den kan brukes til å lese både numeriske og assosiative matriser. Hver elementverdi i matrisen vil bli lagret i en variabel i hver iterasjon.
foreach ($ array som $ value)// uttalelser
Følgende for hver loop brukes til å lese elementverdiene til en matrise. Den brukes hovedsakelig til å lese assosiative matriser. I hver iterasjon av sløyfen lagres hver nøkkel og verdi i matrisen i to variabler.
foreach ($ array som $ key => $ element)// uttalelser
Eksempel 1: Lesing av en numerisk matrise
Følgende eksempel viser måten å lese det numeriske arrayet på ved hjelp av a for hver Løkke. Opprett en PHP-fil med følgende skript.
En numerisk matrise som heter $ num_array av 10 elementer er erklært i skriptet, og en tom matrise heter $ new_array er erklært for å lagre partall fra det numeriske arrayet. for hver loop brukes til å gjenta det numeriske arrayet, og hvis brukes til å finne ut partallene fra $ num_array og lagre alle partallnummer i $ new_array. En annen for hver loop brukes til å skrive ut verdiene på $ num_array.
// Deklarer en numerisk matrise$ num_array = array (12, 90, 15, 6, 32, 38, 75, 57, 60, 78);
// Erklære en tom matrise
$ new_array = array ();
// initialisere indeksen for den tomme matrisen
$ indeks = 0;
ekko "Arrayverdiene er:
";
/ * Iterer den numeriske matrisen for å finne ut tallene som kan deles med 5
og lagre i en ny matrise * /
foreach ($ num_array som $ value)
hvis ($ verdi% 5 == 0)
$ new_array [$ index] = $ verdi;
$ index ++;
ekko $ verdi."";
ekko "
Listen over tall som kan deles med 5:
";
// Skriv ut verdiene til $ new_array-arrayet
foreach ($ new_array som $ verdi)
ekko $ verdi."";
?>
Produksjon:
Følgende utdata vises når du har kjørt skriptet fra serveren. Utgangen viser at det er fire partall i det numeriske arrayet.
Eksempel 2: Lesing av en assosiativ matrise
Følgende eksempel viser måten å lese en assosiativ matrise og lagre bestemte nøkler fra en matrise til en annen, ved hjelp av a for hver Løkke. Her heter den assosiative matrisen $ medlemmer inneholder navnet på medlemmet som nøkkel, og Tilstede eller Fraværende som verdien til matrisen. Et tomt utvalg kalt $ present_member brukes til å lagre navnet på medlemmene som er til stede. Neste, den for hver loop brukes til å skrive ut verdiene på $ present_member.
// Erklære en assosiativ matrise$ members = array ('Mehr Nigar' => 'Present', 'Ahmmed Ali' => 'Present', 'Maksudur Rahman' => 'Fraværende', 'Farzana Akter' => 'Present', 'Kamal Hasan' = > 'Fraværende');
// Erklære en tom matrise
$ present_members = array ();
// Initialiser indeksen for matrisen
$ indeks = 0;
// Finn ut listen over nåværende medlemmer
foreach ($ medlemmer som $ key => $ verdi)
hvis ($ value == 'Present')
$ present_members [$ index] = $ nøkkel;
$ index ++;
// Telle det totale antallet nåværende medlemmer
$ count = count ($ present_members);
ekko "$ count medlemmer er til stede.
";
ekko "Medlemmene er:
";
// Skriv ut listen over nåværende medlemmer
foreach ($ present_members som $ verdi)
ekko $ verdi. "
";
?>
Produksjon:
Følgende utdata vises når du har kjørt skriptet fra serveren. Den assosiative matrisen inneholder tre Tilstede verdier og to Fraværende verdier. For dette viser utgangen tre medlemmers navn fra $ medlemmer array som er til stede.
Eksempel 3: Lesing av egenskapene til objektvariabelen
Følgende eksempel viser måten du kan lese eiendomsnavnene og verdiene til et hvilket som helst objekt. Opprett en PHP-fil med følgende skript.
En klasse som heter Kunde er definert i skriptet som inneholder tre offentlige egenskaper med verdier. Neste, den $ objekt variabel er opprettet for å få tilgang til egenskapene til klassen. Objektvariabelen kan analyseres som den tilknyttede matrisen ved hjelp av foreach-sløyfen. De for hver loop brukes her for å lese eiendomsnavnet og eiendomsverdien til objektvariabelen, $ objekt. Hvert eiendomsnavn og verdi på $ objekt vil bli lest i hver gjentakelse av sløyfen og skrevet ut på hver linje.
// Definer klassen med tre egenskaperklasse Kunden
offentlig $ name = 'Mehnaz Hossain';
public $ email = '[email protected]';
offentlig $ telefon = '0184423675';
// Lag objektet til klassen
$ objekt = ny kunde ();
// Skriv ut objektegenskapene ved hjelp av foreach loop
ekko "
Kundeopplysningene:
";foreach ($ objekt som $ eiendom => $ verdi)
ekko "$ eiendom = $ verdi
";
?>
Produksjon:
Følgende utdata vises når du har kjørt skriptet fra serveren. De Kunde klasse inneholder tre egenskaper, som er Navn, e-post, og telefonen. Disse egenskapene initialiseres med verdiene i klassen. Eiendomsnavnene og verdiene skrives ut i utdataene.
Konklusjon
De forskjellige bruksområdene for foreach-sløyfen i PHP er beskrevet i denne veiledningen ved å bruke flere eksempler. Måtene å lese array- og objektvariabler ved hjelp av foreach-løkken er også vist.
Denne sløyfen er bedre å bruke når postene blir hentet fra hvilken som helst databasetabell ved hjelp av PHP. Denne sløyfen kan brukes til å lese bare arrayverdiene eller eiendomsverdiene til objektet og lese arrayverdiene med nøkler eller eiendomsverdiene med navnene.