php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.06.2010, 13:07  
Neuer Benutzer
 
Registriert seit: 26.11.2008
Beiträge: 4
TribunM befindet sich auf einem aufstrebenden Ast
Standard Mehrdimensionalen Array filtern und sortieren

Hallo PHP Freunde,

ich versuche gerade einen mehrdimensionalen Array zu filtern, dann zu sortieren und als neuen Array auszugeben. Wenn ich ehrlich bin klappt das im Moment nicht wirklich

Ich habe folgende schleife mit einem array aus Datenbankinhalten inkl. "Unterarray":

PHP-Code:
$cat[] = array ("parent_id" => $row[parent_id], "name" => $row[name], "anzahl" => $row[count], "cat" => array ("cat_id" => $row[cat_id], "cat_name" => $row[cat_nam])
); 
Das Ziel ist eine Baumstruktur für eine Suche. So etwas:

1.

Action 8
- DVD 2
- Blue Ray 6

Komödie 3
- DVD 3

Ich bekomme aber das so nicht hin, wenn es mehrere Ergebnisse in der Oberkategorie gibt. Ich möchte auch nicht eine extra Abfrage für die Unterkategorien ausfühgren, was natürlich auch geht, aber dementsprechend pro Unterkategorie eine Abfrage ausführt.

Im Moment erhalte ich folgendes:

2.

Action 2
- DVD 2

Action 6
- Blue Ray 6

Komödie 3
- DVD 3

Wie kann ich "gleiche" Arrays, sprich mit der gleichen parent_id zusammenfassen, so dass es wie in 1. aussieht?
Als Anzahl könnte man glaube ich die einzelnen Werte zählen, aber das klappt auch noch nicht.

Ich hoffe, dass ihr mir weiterhelfen könnt.

Geändert von TribunM (11.06.2010 um 13:11 Uhr).
TribunM ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.06.2010, 13:13  
Erfahrener Benutzer
 
Registriert seit: 15.04.2010
Beiträge: 813
PHP-Kenntnisse:
Fortgeschritten
Paul.Schramenko befindet sich auf einem aufstrebenden Ast
Standard

Wenn ich richtig verstehe was du machen willst, würde ich das mit Nested Sets machen.
Nested Sets – Verschachtelte Bäume mit MySQL - Arne Klempert Kannst dir das ja mal anschauen.
__________________
"My software never has bugs, it just develops random features."
"Real programmers don't comment. If it was hard to write, it should be hard to understand!"
Positive Bewertungen sind nicht unwillkommen...
Paul.Schramenko ist offline  
Alt 11.06.2010, 13:27  
Neuer Benutzer
 
Registriert seit: 26.11.2008
Beiträge: 4
TribunM befindet sich auf einem aufstrebenden Ast
Standard

Ui hm das würde sicher auch gehen, aber dann muss ich meine gesamte Datenbankstruktur komplett umkrempeln. Von daher würde ich lieber den vorgeschlagenen Weg gehen, also das zusammenfassen und gruppieren des Arrays an den richtigen Stellen.

Geändert von TribunM (11.06.2010 um 14:24 Uhr).
TribunM ist offline  
Alt 11.06.2010, 17:23  
Erfahrener Benutzer
 
Registriert seit: 14.10.2007
Beiträge: 306
PHP-Kenntnisse:
Fortgeschritten
Papst befindet sich auf einem aufstrebenden Ast
Standard

Kleiner Tipp am Rande:
$row[parent_id]
ist nicht valide und wirft eine Notice!
Papst ist offline  
Alt 11.06.2010, 20:17  
Neuer Benutzer
 
Registriert seit: 26.11.2008
Beiträge: 4
TribunM befindet sich auf einem aufstrebenden Ast
Standard

versteh nicht was du mit valide in dem Beispiel meinst?

Soweit habe ich es mittlerweise hinbekommen, dass der Baum richtig angezeigt wird:

Action 2
- DVD 2
- Blue Ray 6

Komödie 3
- DVD 3

Nur habe ich noch Probleme bei dem Count für die Oberkategorie, sofern Ergebnisse in mehr als einer Unterkategorie gefunden wurde. Wie kann ich es anstellen, dass er die Counts der Arrays, also ucat['cat_count'] der einzelnen Unterkategorien zusammenzählt und wie setze ich den dann ein, so dass er je Hauptkategorie angezeigt wird?

So sieht das momentan aus:

PHP-Code:
while ($row....

$cat[$row[parent_id]] = array ("parent_id" => $row[parent_id], "name" => $row[name], "count_all" => $row[count], "ucat" => array ()
);

$cat[$row['parent_id']]['ukat'][] = array(
"cat_id" => $row[cat_id], "cat_name" => $row[cat_name], "cat_count" => $row[count]);

Mit array-sum habe ich es noch nicht hinbekommen. Über Tipps und ein wenig Hilfe würde ich mich freuen.

Vielen Dank im Voraus
TribunM ist offline  
Alt 13.06.2010, 13:21  
Neuer Benutzer
 
Registriert seit: 26.11.2008
Beiträge: 4
TribunM befindet sich auf einem aufstrebenden Ast
Standard

Na ja eine hilfreiche Community nenne ich aber etwas anderes. Sehr schade, aber da kann man sich die Frage auch gleich sparen.

Ich habe es jetzt alleine gelöst. Danke für Nichts
TribunM ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Sortierung mehrerer Arrays philosapiens PHP Tipps 2010 16 08.06.2010 05:22
IE8 verliert Session Lenki PHP-Fortgeschrittene 10 25.04.2010 01:10
Array in dem Arrays sind sortieren superheld PHP Tipps 2010 1 22.04.2010 12:16
[Erledigt] Problem bei update mit array feldern fulltilt PHP Tipps 2010 6 13.02.2010 00:59
[Erledigt] Tabellen die sich selbst referenzieren Squall PHP Tipps 2009 19 04.08.2009 21:33
[Erledigt] Array Sortieren beist PHP Tipps 2009 4 10.07.2009 08:53
Array umwandeln von zwei zu mehrdimensional erselbst PHP Tipps 2009 6 02.04.2009 23:30
Turnierbaum aus array erstellen kingflo PHP-Fortgeschrittene 11 30.07.2008 11:32
Array sortieren mit regex Lupi PHP Tipps 2008 3 21.07.2008 15:17
Array auslesen andrew22 PHP Tipps 2006 3 21.01.2006 23:06
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Array verkehrt sortieren (key) // letzter Arrayeintrag PHP Tipps 2005-2 5 20.09.2005 15:55
Sortieren von Arrays mit mehr als 2 Dimensionen (Teil 2) Buhmann PHP-Fortgeschrittene 4 12.07.2005 14:03
array in array filtern, kopieren oder irgendwas, das hilft PHP Tipps 2005 2 14.04.2005 12:10

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
array filtern, php array filtern, php mehrdimensionales array filtern, http://www.php.de/php-einsteiger/68833-mehrdimensionalen-array-filtern-und-sortieren.html, php array filter, mehrdimensionale arrays filtern, php mehrdimensionales array 2 werte filtern, php mehrdimensionale array filtern, mehrdimensionales array filtern, array komplett filtern, php filter mehrdimensionales array, arrays filtern, php mehrdimensionale arrays filtern, php multi array gruppieren, mehrdimensionales array filtern php, arry filtern, php mehrdimensionales array filter, php filter array, php array gleiches gruppieren, array filtern php

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum