| 

.NET C# Java Javascript Exception

3
Ich verzweifle gerade an einem Array Multisort mit anschließendem Unique. Irgendwie habe ich da ein mittelstarkes

$data[]=array("Name" => "Meier", "id" => "1";
$data[]=array("Name" => "Lehmann", "id" => "2";
$data[]=array("Name" => "Meier", "id" => "1";
$data[]=array("Name" => "Meier", "id" => "1";
$data[]=array("Name" => "Lehmann", "id" => "2";


Eine für mich sinnvolle Ausgabe wäre
{
Meier => 1,
Lehmann =>2
}
19.04.2012
holgi 63 1 4
holgi 63 1 4
Und? Wie wäre es, wenn Du uns auch mal den passenden Code zeigst, den Du aufrufst? Und das Ergebnis was Du bekommst?
Xantiva 19.04.2012
Ich glaube er möchte den Code sehen, der die Ausgabe erzeugt ;-)
puls200 19.04.2012
1 Antwort
1
<?php

function p($obj)
{
?><pre><?php
print_r($obj);
?></pre><?php
}

function cmp($a, $b)
{
return strcmp($a["id"], $b["id"]);
}

function doesExist($a)
{
global $result;
if(!in_array($a, $result)) {
$result[] = $a;
}
}

$result = array();
$data[]=array("Name" => "Meier", "id" => "1");
$data[]=array("Name" => "Lehmann", "id" => "2");
$data[]=array("Name" => "Meier", "id" => "1");
$data[]=array("Name" => "Meier", "id" => "1");
$data[]=array("Name" => "Lehmann", "id" => "2");

// p($data);

usort($data, "cmp");

// p($data);

array_walk($data, "doesExist");

p($result);

?>


liefert

Array
(
[0] => Array
(
[Name] => Meier
[id] => 1
)

[1] => Array
(
[Name] => Lehmann
[id] => 2
)
)


Es geht sicher noch eleganter, sollte dich aber auf die richtige Spur setzen.
19.04.2012
puls200 3,8k 7
Warum nutzt du ein Assoziatives Array im Array? Warum nicht nur ein Assoziatives Array mit der ID als Key und den Namen als Value bzw. im Value ein erneutes Assoziatives Array, damit musst du dann auch nicht sortieren.
Lord_Pinhead 20.04.2012
War nicht meine Idee, das hat der Fragesteller vorgegeben. Du hast natürlich Recht dass das auch einfacher geht.
puls200 20.04.2012

Stelle deine Php-Frage jetzt!