ebiz-webhosting
- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-03-2003, 13:33
LaHood
 Junior Member
Links : Onlinestatus : LaHood ist offline
Registriert seit: Oct 2002
Beiträge: 169
LaHood ist zur Zeit noch ein unbeschriebenes Blatt
Standard Assoziative Arrays nach Max sortieren?

Hi,

gibt es eine Möglichkeit ein assoziatives Array nach dem Maxwert zu sortieren?
Ich kann das nicht über die DB machen, da ich die Abfrage mehrere tausend Mal machen müsste, und ich in einem früheren Posting schon gesehen habe, dass dadurch die Scriptzeit massiv in die Höhe schnellt.

bei einem normalen Array kann man ja mit:

PHP-Code:
$maxW max($ergebnis['Wert']); 
den Wert herausbekommen. Nur wie machen ich das wenn ich:

PHP-Code:
ergebnis[$Zaehler]['Wert']; 
habe? Ich habe in der Suche einen Link zu einem ähnlichen Posting gefunden, wo ein Hinweis auf 'multi_sort' war, den ich aber nicht ganz nachvollziehen konnte.

Thx
Grüße
cu LaHood
Mit Zitat antworten
  #2 (permalink)  
Alt 05-03-2003, 13:49
Günni
 Master
Links : Onlinestatus : Günni ist offline
Registriert seit: Jun 2002
Ort: Landau/Pfalz
Beiträge: 2.589
Günni ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Schau mal hier nach http://www.php.net/manual/de/ref.array.php
__________________
mfg
Günni


Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
City-Tiger - Online durch die Straßen tigern...
Mit Zitat antworten
  #3 (permalink)  
Alt 05-03-2003, 14:04
LaHood
 Junior Member
Links : Onlinestatus : LaHood ist offline
Registriert seit: Oct 2002
Beiträge: 169
LaHood ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmm funkt net:

PHP-Code:
ksort ($ergebnis['Close']);
reset ($ergebnis['Close']);
while (list (
$key$val) = each ($ergebnis['Close'])) {
    echo 
"$key = $val\n";

Bekomme dort eine Fehlermeldung.
Warning: Wrong datatype in ksort() call in c:\apache\htdocs\test\firststep.php on line 96

Ich denke mal das liegt daran dass es $ergebnis['Close'] garnicht gibt, sondern nur $ergebnis[$zaehler]['Close']



Grüße
cu LaHood
Mit Zitat antworten
  #4 (permalink)  
Alt 05-03-2003, 14:21
Günni
 Master
Links : Onlinestatus : Günni ist offline
Registriert seit: Jun 2002
Ort: Landau/Pfalz
Beiträge: 2.589
Günni ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn es dies ja nicht gibt, dann kann er dies j auch nicht sortieren.
__________________
mfg
Günni


Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
City-Tiger - Online durch die Straßen tigern...
Mit Zitat antworten
  #5 (permalink)  
Alt 05-03-2003, 14:39
LaHood
 Junior Member
Links : Onlinestatus : LaHood ist offline
Registriert seit: Oct 2002
Beiträge: 169
LaHood ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmm aber das hier macht doch auch keinen Sinn :

PHP-Code:
ksort_($ergebnis[$zaehler]['Close']);

reset_($ergebnis[$zaehler]['Close']);

while_(list_($key,_$val)_=_each_($ergebnis[$zaehler]['Close']))_{

____echo_"$key_=_$val\n";


Denn wenn $zaehler einen bestimmten Wert hat bekomme ich als Ergebnis ja auch nur einen einzigen Wert zurück. Dann brauch ich auch nix mehr sortieren


Ich muss aber wissen welchen höchsten Wert es von $ergebnis[$anfang]['Close'] bis $ergebnis[$ende]['Close'] gibt.
Mit Zitat antworten
  #6 (permalink)  
Alt 05-03-2003, 23:29
Günni
 Master
Links : Onlinestatus : Günni ist offline
Registriert seit: Jun 2002
Ort: Landau/Pfalz
Beiträge: 2.589
Günni ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Dann musst du in einer Schleife jeden wert durchgehen. Wenn der Wert höher ist als der alte, speichere diesen dann als neuen höchsten wert...
__________________
mfg
Günni


Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
City-Tiger - Online durch die Straßen tigern...
Mit Zitat antworten
  #7 (permalink)  
Alt 05-03-2003, 23:41
Günni
 Master
Links : Onlinestatus : Günni ist offline
Registriert seit: Jun 2002
Ort: Landau/Pfalz
Beiträge: 2.589
Günni ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hier ein kleines Beispiel:
PHP-Code:
<?
    $werte 
= array(1,3,48,891,718,892,17,2,74,89,48,99,1000);
    
$max 0;
    
    for(
$i=0;$i<count($werte);$i++)
    {
        if(
$werte[$i] > $max$max $werte[$i];
    }
    
    echo 
"Größter Wert ist: $max";

?>
oder
max -- Maximalwert bestimmen

Beschreibung

mixed max ( mixed arg1, mixed arg2, mixed argn)


max() liefert den numerisch größten Eingabewert zurück.

Ist der erste Parameter ein Array, so wird der größte Wert innerhalb dieses Array zurückgegeben. Anderenfalls müssen mindestens zwei Parameter übergeben werden, und max() liefert den Wert des größten Parameters zurück. Die Anzahl der Eingabe-Parameter ist nur durch den verfügbaren Hauptspeicher begrenzt.

Ist mindestens einer der Eingabewerte vom Typ double, so werden alle Werte als double behandelt und der Rückgabewert ist ebenfalls vom Typ double. Anderenfalls werden alle Eingabewerte als int behandelt und auch ein int zurückgegeben.
__________________
mfg
Günni


Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
City-Tiger - Online durch die Straßen tigern...

Geändert von Günni (06-03-2003 um 02:01 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 06-03-2003, 09:24
LaHood
 Junior Member
Links : Onlinestatus : LaHood ist offline
Registriert seit: Oct 2002
Beiträge: 169
LaHood ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ok dein Scriptbeispiel sollte den Maxwert liefern.

PHP-Code:
<?

___

____$max_
=_0;

____

____for
($i=0;$i<count($row);$i++)

____{

________if($$ergebnis[$i]['Close']_>_$max)_$max_=_$ergebnis[$i]['Close'];

____}

____

____echo_
"Größter_Wert_ist:_$max";

?>
Allerdings scheint es mir so dass ich die max() Funktion nicht auf das Array anwenden kann, da mein Array nicht so:

PHP-Code:
$werte_=_array(1,3,48,891,718,892,17,2,74,89,48,99,1000); 
sondern so aussieht:
PHP-Code:
$ergebnis[$i]['Close'
Naja ich werde das mit der Schleife erstmal machen

Grüße
cu LaHood
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:32 Uhr.