Wie filtere ich ein assoziatives Array?

8

Ich muss mich mit einem Refactoring beschäftigen, um die Anzahl der Codezeilen in PHP zu reduzieren, um ein assoziatives Array zu filtern. Also mache ich eine Auswahl von DB in MySQL, um ein assoziatives Array zu erhalten. So hat mein "Objekt" ein Kategorie- und ein Nachname-Feld.

%Vor%

Ich möchte von diesem Array so viele andere Sub-Arrays erhalten, die nach der Kategorie aufgeteilt sind. Ich meine die Kategorie Array-Identifikation kann sein:

%Vor%

Also, was ich will, ist ein Array für jede Kategorie zu erhalten, die alle Nachnamen dieser Kategorie enthält. Angenommen, die Methode funktioniert, etwa so:

%Vor%

Am Ende möchte ich so etwas:

%Vor%

Vielen Dank im Voraus für Ihre Hilfe.

    
I love coding 30.04.2015, 10:33
quelle

2 Antworten

1

Der Ansatz von Sergeant ist am einfachsten. Nur um es zu erwähnen, hier ist ein Ansatz mit array_filter() (nur für den Fall, dass Sie auch ein ungefiltertes Array haben müssen):

%Vor%

Hier ist ein Proof of Concept ohne die Notwendigkeit einer Datenbankverbindung:

%Vor%

Ausgabe:

%Vor%     
jeromegamez 30.04.2015, 10:42
quelle
3

So weit ich Sie verstehe - Sie brauchen ein Array, das alle surname category weise enthält, damit Sie leicht darauf zugreifen können. Dies sollte helfen -

%Vor%

Speichern Sie die Kategorie einfach als key und alle surname als Werte für diese key .

    
Sougata Bose 30.04.2015 10:38
quelle

Tags und Links