php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.03.2008, 05:27  
Neuer Benutzer
 
Registriert seit: 30.03.2008
Beiträge: 6
eLement befindet sich auf einem aufstrebenden Ast
Standard Array Werte sortieren

Hallo,

bin noch nicht ganz so fit was PHP und insbesondere dessen Arrayfunktionen angeht.
Mein Problem ist, dass ich einen Array habe und diesen nach den Werten sortieren möchte. Das Einzige was klappt ist das Sortieren nach den Elementen. So sieht es bisher aus.

Code:
foreach($keywords as $keyword)
  {
  $words = explode(" ",$keyword);
  foreach($words as $word)
    {
    $word = strtolower($word);
    
    if (isset($tags[$word]))
      {
      $tags[$word] += 1;
      }
    else
      {
      $tags[$word] = 1;
      }
    }
  }

krsort($words);
foreach($tags as $tag)
   {
   }

print_r($tags);

Ergibt das:
[abschied] => 1
[aof] => 1
[arbeit] => 2
[berlin] => 2
[bier] => 2
[bild] => 1
[bilder] => 1
[blog] => 4

Leider finde ich nichts was die Werte sortiert. Etwa in der Form:
[blog] => 4
[arbeit] => 2
[berlin] => 2
[bier] => 2
[abschied] => 1
[aof] => 1
[bild] => 1
[bilder] => 1

Kann mir da jemand helfen? Danke im Voraus
eLement ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 30.03.2008, 09:34  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

ksort() und krsort sortieren die Keys des Arrays (deshalb auch das k vor dem sort()). Benutze mal die Funktion rsort(), die sortiert nach den Array-Werten.
Montellese ist offline  
Alt 30.03.2008, 10:33  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Du suchst arsort() und Du willst $tags sortieren, nicht $words.
PHP-Code:
arsort($tags); 
David ist offline  
Alt 30.03.2008, 12:09  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

David hat natürlich recht. Hab mir dein Array zu ungenau angesehen ^^ Habe nur geschaut, ob du nach Keys oder nach Values sortieren willst.
Montellese ist offline  
Alt 30.03.2008, 13:03  
Neuer Benutzer
 
Registriert seit: 30.03.2008
Beiträge: 6
eLement befindet sich auf einem aufstrebenden Ast
Standard

Danke für die schnellen Antworten. Ich werde es gleich mal ausprobieren
eLement ist offline  
Alt 30.03.2008, 14:49  
Neuer Benutzer
 
Registriert seit: 30.03.2008
Beiträge: 6
eLement befindet sich auf einem aufstrebenden Ast
Standard

Hey funktioniert einwandfrei
Aber da wir gerade bei Arrays sind. Wenn ich nun den ganzen Array mischen möchte (shuffle), dann gehen mir die ganzen keys verloren und ich habe nur noch die gemischten Werte. Ist das normal so oder was mache ich falsch?
eLement ist offline  
Alt 30.03.2008, 17:27  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Das ist normal. Was genau willst Du erreichen?
David ist offline  
Alt 30.03.2008, 18:16  
Neuer Benutzer
 
Registriert seit: 30.03.2008
Beiträge: 6
eLement befindet sich auf einem aufstrebenden Ast
Standard

Ich möchte eine Tag-Cloud basteln. Und die Werte alleine nützen mir nichts. Ausgegeben werden sollen die Keys und die Grösse ist abhängig von den Werten.

Hier ein Beispiel wie es im Moment aussieht, allerdings sind die Tags sortiert.
Cloudtag
eLement ist offline  
Alt 30.03.2008, 18:20  
Erfahrener Benutzer
 
Benutzerbild von Montellese
 
Registriert seit: 30.07.2007
Beiträge: 541
Montellese befindet sich auf einem aufstrebenden Ast
Montellese eine Nachricht über MSN schicken
Standard

Ähm sind "tag clouds" (glaube das ist der korrekte englische Begriff für "Schlagwortwolke" ^^) nicht meistens alphabetisch sortiert, damit man sich darin besser "zurecht findet"? Dann könntest du auf den shuffle nämlich verzichten und hättest ein Problem weniger.
Montellese ist offline  
Alt 30.03.2008, 22:39  
Neuer Benutzer
 
Registriert seit: 30.03.2008
Beiträge: 6
eLement befindet sich auf einem aufstrebenden Ast
Standard

Ich weiss nicht genau ob es da eine genau "Definition" gibt, aber oft sieht man es auch gemischt. Ich persönlich finde es auch schön wenn es sich bei jeder Aktualisierung ändert

Klar könnte man darauf verzichten, aber würde halt einfach wissen wollen wie es geht
eLement 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
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 nach bestimmter Spalte sortieren GELight PHP Tipps 2006 4 19.08.2006 23:42
Mehrdimensionales Array sortieren Unbekanntes_Pferd PHP Tipps 2006 6 23.05.2006 20:42
array richtig sortieren, dann ausgeben Heart PHP Tipps 2006 5 28.04.2006 20:23
Array auslesen andrew22 PHP Tipps 2006 3 21.01.2006 23:06
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Problem beim vergleichen von 2 Arrays PHP Tipps 2005-2 1 06.10.2005 14:25
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
[Erledigt] $_SESSION: Array Werte werden nicht gespeichert. PHP-Fortgeschrittene 11 11.05.2005 23:13
2 Array in Abhänigkeit sortieren? PHP Tipps 2005 4 10.02.2005 20:31
Array mit Gruppen: Wie Sortieren PHP Tipps 2005 2 29.01.2005 15:15
[Erledigt] Mehrdimensionales Array in eindimensionales Array umwandeln PHP-Fortgeschrittene 3 03.01.2005 22:31

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php array sortieren nach value, php sort array by value, array zahlen sortieren, php array nach value sortieren, foreach sortieren, php array nach größe sortieren, php array sortieren nach wert, array nach wert sortieren, php array sort by value, php array nach wert sortieren, php array nach werten sortieren, php array werte sortieren, array werte sortieren, php array zahlen sortieren, array nach größe sortieren php, array nach value sortieren php, array nach größe sortieren, php array nach key sortieren, php array nach values sortieren, php array sort value

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:27 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