2010-11-29 6 views

Antwort

2
$result = array(); 
foreach ($values as $value) { 
    $uniqueKey = createUniqueKey($value); 
    if (!array_key_exists($uniqueKey, $result) { 
     $result[$uniqueKey] = array(); 
    } 
    $result[$uniqueKey][] = $value; 
} 

Es ähnelt JDS-Lösung: Es erstellt ein multidimensionales Array. Natürlich müssen Sie einen Weg definieren, um jeden Wert einem einzigen eindeutigen Schlüssel zuzuordnen (hier als createUniqueKey() beschrieben)

+0

Das, was ich tat, war nur die mehrdimensionalen Array-Elemente falsch zuweisen. Thnaks – arma

1

Sie könnten ein mehrdimensionales Array verwenden.

Es ist eine Weile her, dass ich PHP verwendet, aber aus dem Speicher:

$array[0][0] = "Item 1"; 
$array[0][1] = "Item 2"; 
$array[0][2] = "Item 3"; 
$array[1][0] = "Item 1"; 
$array[1][1] = "Item 2"; 
$array[1][2] = "Item 3"; 

erzeugt ein Array von 2 Einzelteilen, die jeweils 3 Teile enthält.

0

Ist das, worüber Sie sprechen? Wenn nicht, können Sie ein Beispiel für die Daten geben?

$unique_keys = (1,2,3,4,5); 

foreach ($unique_keys as $unique_key) { 
    $new_array[$unique_key] = array(3,57,22); 
}