Array_unique Frage

Arantis

Grünschnabel
Ich habe eine Frage.
Undzwar lese ich aus einer Datenbank-Tabelle Daten aus. BEi den Einträgen wird geprüft ob es alte sind oder neue.. also wird die loginzeit/datum mit dem eintragsdatum/zeit verglichen...
wenn der eintrag neu ist soll er daten aus einer anderen Tabelle rausholen... diese werden in ein array geschrieben... [name,datum,uhrzeit,...]
das ganze soll eine anzeige von neuen Beiträgen im Forum sein... man loggt sich auf der seite ein und sieht es gibt (xx) neue beiträge ... dort klickt man drauf und er zeigt dann alle threads an die neu sind mit dazugehörigem Forum.

so da ich aber nur den thread einmal anzeigen will und nicht z.B. den thread test 5 mal .. also wenn es 5 neue beiträge in dem thread gibt würde er mir ja 5 mal den thread ausgeben... somit lese ich alles in ein array und nach dem überprüfen aller einträge soll er mir beim array vom threadnamen alle doppelten rausfiltern... sprich array_unique... das problem ist allerdings das er die anderen inhalte in den anderen arrays nicht mitlöscht.. also z.B. für das array forum usw...

kann man irgendwie feststellen welche stellen eines arrays array_unique gelöscht hat damit ich in den anderen arrays die gleichen stellen löschen kann?
oder gibt es eine andere lösung
 
Ich vermute mal, da Du weder Deine Tabellenstruktur, noch Deinen Quelltext herzeigst, dass man das direkt in der SQL-Abfrage abfangen kann.
Zum Beispiel mit GROUB BY threadID.
Dazu noch ORDER BY eintragszeit DESC und WHERE eintragszeit > loginzeit.
Die Daten aus der anderen Tabelle kannst Du direkt mit einem JOIN in Deinem Query mit aufnehmen.
Dann musst Du in PHP nur noch auslesen und ausgeben.
Das ist in der Regel deutlich schneller, als wenn Du es hinterher mit PHP sortierst.
 
Zurück