Der Befehl push fügt einem Array am Ende einen oder mehrere neue Werte hinzu, ein Array kann also mit dem push-Befehl erweitert werden. Diese neuen Werte werden, wie gesagt, am Ende des Arrays hinzugefügt. Möchte man am Anfang eines Arrays einen neuen Wert einfügen, kann man den Befehl unshift verwenden.
@a=("hans"); push(@a,"peter"); # Den Eintrag peter hinzufügen push (@a,"fritz"); # Den Eintrag fritz hinzufügen print @a;
Ausgabe: hans peter fritz
Übrigens funktioniert das auch mit mehreren neuen Werten oder mit kompletten anderen Arrays, aber Vorsicht, hier wird dann "am Stück" eingefügt, also in der Reihenfolge, die angegeben wird (anschauen bringt glaub ich mehr als meine Beschreibung...):
Der Befehl, der das Umgekehrte bewirkt wie push, der also ein Element eines Arrays entfernt, ist der pop-Befehl.
Genauer gesagt entfernt der pop-Befehl den letzten Eintrag bzw. Wert eines Arrays.
Dieser kleine Codeabschnitt fügt dem Array @a erst den Wert "test" hinzu, dann den Wert "Neu", der dann aber sofort wieder entfernt wird. Die Ausgabe lautet deshalb "test".
Kommentare zum Beitrag "push in Perl"
Kommentar von Chris
Push kann auch mehrdimensionale Array füllen:
my $ziel = (["a","b","c"]);
push(@ziel,[("wert0","wert1","wert2")]);
print "$ziel[1][1]";