suit: array_splice verliert nummerische Keys

Hallo,

Ausgangssituation: ein Array mit ein paartausend Strings wird mit array_count_values und arsort sortiert (um eine Tagwolke zu erstellen).

Nach dem Anwenden von array_splice($arr, 10); sind nummerische Key aber weg (works as designed, wie auch in der Doku erwähnt).

Ich suche nun eine Möglichkeit, wie ich den Key trotzdem behalten kann.

Gibts hier eine einfache Möglichkeit, wie ich das umgehen kann oder muss ich mir wirklich (wie in den Kommentaren empfohlen) eine eigene array_splice-Funktion schreiben. Da ich ja nur die ersten X Einträge brauche und kein Replacement haben möchte, würde hier eine simple Foreach-Schleife die nach 10 durchläufen beendet wird ausreichen.

array(7117) {  
  ["Aquarell"]=> int(334)  
  ["600g"]=> int(249)  
  ["Fabriano"]=> int(225)  
  ["satinata"]=> int(179)  
  ["Galerie"]=> int(149)  
  ["Städtebilder"]=> int(147)  
  ["Artistico"]=> int(108)  
  ["Media"]=> int(91)  
  [2006]=> int(91)  
  ["Mixed"]=> int(90)  
  [2007]=> int(72)  
  ["verkauft"]=> int(72)  
  [2008]=> int(70)  
  [2005]=> int(67)  
  // [...]  
}  
  
array(10) {  
  ["Aquarell"]=> int(334)  
  ["600g"]=> int(249)  
  ["Fabriano"]=> int(225)  
  ["satinata"]=> int(179)  
  ["Galerie"]=> int(149)  
  ["Städtebilder"]=> int(147)  
  ["Artistico"]=> int(108)  
  ["Media"]=> int(91)  
  [0]=> int(91)  
  ["Mixed"]=> int(90)  
}
  1. Moin!

    Nach dem Anwenden von array_splice($arr, 10); sind nummerische Key aber weg (works as designed, wie auch in der Doku erwähnt).

    Ich suche nun eine Möglichkeit, wie ich den Key trotzdem behalten kann.

    array_slice mit viertem Parameter true.

    - Sven Rautenberg

    1. array_slice mit viertem Parameter true.

      Firma dankt.