Teil aus Array löschen

F

Firefox User

Jungspund
Wie kann ich aus einem Array alles löschen außer die ersten 5 Einträge??
 
Meinst du jetz ich soll mit count das Array zählen und dann mit while und pop so lange 1 entfernen bis count 5 ist?

So habs jetz hinbekommen:
PHP:
<?php
while (array_pop($bilderliste)) {
$zahl = (count($bilderliste));
if ($zahl == 5) break;
}
?>
 
Zuletzt bearbeitet:
Ich kann nur für Java sprechen und darin galt immer die Fausregel "musste selbst machen". Also durchlaufen und nur das "kopieren/übernehmen", was man eigentlich haben wollt'.
 
Ich dachte eher an
Code:
<?php 
while (count($bilderliste) > 5){
 array_pop($bilderliste) ;
}
Macht zwar das gleiche, aber nicht gar so umständlich und hat ne "ordentliche" Abbruchbedingung.
 
Zuletzt bearbeitet:
Firefox_User: Ordentlicher Code benutzt kein break. Schleifen werden immer nur so verlassen, dass dies über die Schleifenbedingung passiert. Wenn das nicht geht, benutzt du die falsche Schleife, daboss hat ein sauberes Beispielcoding geliefert, dass auch wesentlich schwerer mißzuverstehen ist. Deine anderen Threads enthalten auch viel qualitativ schlechten Code, vielleicht suchst du mal ein paar Seiten zum Thema wie sieht guter Code aus. Für Java gibt es zum Beispiel Coding Conventions von Sun. Zu PHP findet man sicher auch gute Tipps. Am wichtigsten ist, dass man den Code versteht. Ein break ist immer schwierig, weil es irgendwo stehen kann, und man es leicht übersieht. Bei einer Schleife weiss man so zum Beispiel nie, wann genau sie abbricht, ohne alles durchzulesen. Beim Beispiel von daboss ist es direkt in der ersten Zeile der Schleife klar.
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Ich kann nur für Java sprechen und darin galt immer die Fausregel "musste selbst machen". Also durchlaufen und nur das "kopieren/übernehmen", was man eigentlich haben wollt'.

Eigentlich würde man für sowas kein Array benutzen sondern zum Beispiel einen Stack, der kann pop. Oder eine andere geeignete Klasse. Arrays sind eigentlich in modernem Java nur noch zu sehr wenig zu nutzen.
 
Zuletzt bearbeitet:

Ähnliche Themen

Kernel-Log, das "dmesg" ausgibt, löschen?

Samba 3.6.25 - OpenLDAP Setup

Linux System Admin (w/m/g)/innovatives SW-Unternehmen/Vollzeit/ HomeOffice/asap

Komplette Spalten aus Datei löschen.

grub2 Frage

Zurück
Oben