Foreach-slingan är en kontrollstruktur som är skräddarsydd för process Perl listor och hashes. Precis som för slinga, söka efter steg genom varje element i en matris med en iterator.
Hur man går igenom en matris i Perl With Foreach
Istället för att använda en skalare som en iterator, använder foreach själva matrisen. Till exempel:
Du ser att detta ger samma utskrift som att skriva ut matrisen @myNames i sin helhet:
Om allt du vill är att dumpa innehållet i listan kan du bara skriva ut den. I så fall använder du förhandslingan för att göra utgången lite mer läsbar.
Du ser att den här koden skapar renare utskrifter genom att skriva ut en ny rad efter varje objekt i listan.
En renare Foreach-slinga
Det föregående exemplet använde $ _ för att skriva ut varje element i listan.
Om du använder den här standardimplicerade skalan ($ _) gör det kortare kod och mindre att skriva, men det är inte alltid den bästa lösningen. Om du siktar på en mycket läsbar kod eller om din foreach-slinga är komplex kan du vara bättre på att tilldela en skalär som din iterator.
Det finns bara två skillnader: det skalära $ -namnet mellan förhanden och listan och ersättningen av standardskalan med den inuti slingan. Outputen är exakt densamma, men koden är något renare. Kom ihåg:
- En förhandslinga är en Perl-kontrollstruktur.
- Det används för att gå igenom varje element i en matris.