Hallo alle,
ich bin kein Pro und weiß nicht wie dämlich meine Frage ist aber ich bräuchte Hilfe!
Bei folgender Funktion wird immer nur EINER von mehreren gleichen Nachnamen gelistet und der (die) andere(n) flieg/t(en) raus.
Ich verstehe leider nicht warum?
Was muss ich ändern?
function record_sort($records, $field, $reverse=false){
$hash = array();
foreach($records as $record){
$hash[$record[$field]] = $record;
}
($reverse)? krsort($hash) : ksort($hash);
$records = array();
foreach($hash as $record){
$records []= $record;
}
return $records;
}
array[0]('id'=>1, 'lastname'=> 'Heinz', 'name'=>'Tomate')
array[1]('id'=>2, 'lastname'=> 'Zufall', 'name'=>'Rainer')
array[2]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
array[3]('id'=>4, 'lastname'=> 'Heinz', 'name'=>'Ketchup')
record_sort(array, "lastname");
Statt:
array[0]('id'=>1, 'lastname'=> 'Heinz' 'name'=>'Tomate')
array[1]('id'=>4, 'lastname'=> 'Heinz', 'name'=>'Ketchup')
array[3]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
array[4]('id'=>2, 'lastname'=> 'Zufall', 'name'=>'Rainer')
Kommt dabei raus:
array[0]('id'=>4, 'lastname'=> 'Heinz' 'name'=>'Ketchup')
array[1]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
ich bin kein Pro und weiß nicht wie dämlich meine Frage ist aber ich bräuchte Hilfe!
Bei folgender Funktion wird immer nur EINER von mehreren gleichen Nachnamen gelistet und der (die) andere(n) flieg/t(en) raus.
Ich verstehe leider nicht warum?
Was muss ich ändern?
function record_sort($records, $field, $reverse=false){
$hash = array();
foreach($records as $record){
$hash[$record[$field]] = $record;
}
($reverse)? krsort($hash) : ksort($hash);
$records = array();
foreach($hash as $record){
$records []= $record;
}
return $records;
}
array[0]('id'=>1, 'lastname'=> 'Heinz', 'name'=>'Tomate')
array[1]('id'=>2, 'lastname'=> 'Zufall', 'name'=>'Rainer')
array[2]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
array[3]('id'=>4, 'lastname'=> 'Heinz', 'name'=>'Ketchup')
record_sort(array, "lastname");
Statt:
array[0]('id'=>1, 'lastname'=> 'Heinz' 'name'=>'Tomate')
array[1]('id'=>4, 'lastname'=> 'Heinz', 'name'=>'Ketchup')
array[3]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
array[4]('id'=>2, 'lastname'=> 'Zufall', 'name'=>'Rainer')
Kommt dabei raus:
array[0]('id'=>4, 'lastname'=> 'Heinz' 'name'=>'Ketchup')
array[1]('id'=>3, 'lastname'=> 'Zufall', 'name'=>'Blöder')
Kommentar