This tutorial explains about foreach loop in Perl with examples

perl foreach loop example

foreach loop iterates an list of elements, Syntax:

foreach variable (arrayvariable){

}

variable: It stores an each iterated element arrayvariable: An array variable

my @numbers = (1,2,3,4,5,6);

# foreach loop example
print("For-each Loop:\n");
foreach $number (@numbers) 
{ 
    print ("$number\n");
} 

perl foreach loop in subroutine

For example, This is an example of printing an array using subroutine

sub iterateNumbers {    
    foreach my $i (@_) {
       print "a-$i\n";
    }
}

@numbers = (1,2,3,4);
iterateNumbers(@numbers);

Another example, Modify the array inside a foreach loop.

sub iterateNumbers {    
    foreach my $i (@_) {
       $i= "a-$i\n";
    }
}

@numbers = (1,2,3,4);
iterateNumbers(@numbers);
print "@numbers"

Inside foreach loop, An iterated element($i) still reference in a array.

In Subroutine, @_ is an reference to an List.