php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 28.02.2006, 13:41  
Erfahrener Benutzer
 
Registriert seit: 09.11.2004
Beiträge: 194
greenrover
greenrover eine Nachricht über ICQ schicken greenrover eine Nachricht über Yahoo! schicken
Standard OOP und usort

Code:
<pre>
<?PHP

class testerchen
{
 var $test=array( 1=>array('punkte'=>12),
	          2=>array('punkte'=>162),
	     	  3=>array('punkte'=>62),
	     	  4=>array('punkte'=>92),
	     	  5=>array('punkte'=>42),
	     	  6=>array('punkte'=>32),
	     	  7=>array('punkte'=>15),
	     	  8=>array('punkte'=>112),
 );

 function platz_sort($a, $b)
 {     
   if ($a['punkte'] == $b['punkte'])
    return 0;

   return ($a['punkte'] < $b['punkte']) ? -1 : 1;
 }

 function testerchen()
 {
  usort($this->test, 'platz_sort');

  return $this->test;
 }

}


$test=new testerchen();
print_r($test);
?>
</pre>
Das schmeisst mir:

Warning: usort(): Invalid comparison function. in D:\WWW\test.php on line 29

Und auch wenn ich

usort($this->test, '$this->platz_sort');

mache, kommt das selbe.

Wer kann mir sagen wie es auschauen muss ?!
greenrover ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 28.02.2006, 13:44  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

kuckst du hier
M3g4Star ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:46  
Erfahrener Benutzer
 
Registriert seit: 09.11.2004
Beiträge: 194
greenrover
greenrover eine Nachricht über ICQ schicken greenrover eine Nachricht über Yahoo! schicken
Standard

Ja dnake für den Tipp, das habe ich schon un da steht, das man einfach dne funktions namen an zu geben braucht, aber das geht ja ebend nicht. Ich probiere auch schon eien weile....
greenrover ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:49  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

TIP: Du kommst mit deiner Klasse durcheinander !
M3g4Star ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:51  
Erfahrener Benutzer
 
Registriert seit: 09.11.2004
Beiträge: 194
greenrover
greenrover eine Nachricht über ICQ schicken greenrover eine Nachricht über Yahoo! schicken
Standard

dann korregiere bitte mein script.

Denn ich bin der meinung, das ich eigentlich nichts verwechelst habe, ist ja nur eien klasse..

Ich raffe halt einfach nicht wie usort die funktion nicht findet die in der selben klasse ist ?! *confused*
greenrover ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:52  
Erfahrener Benutzer
 
Registriert seit: 25.04.2005
Beiträge: 1.356
HStev zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

@M3g4Star: dann sag doch auch die Lösung

PHP-Code:
<?php
usort
($this->test, array($this'platz_sort')); 
?>
__________________
Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält.
HStev ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:56  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
@M3g4Star: dann sag doch auch die Lösung
NEIN ... warum auch .. auf der Manual Seite die ich gepostet habe steht sogar ein Beispiel mit Objekten !!!

:wink:


PHP-Code:
<?php
usort
($a, array ("TestObj""cmp_obj"));
?>
M3g4Star ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:58  
Erfahrener Benutzer
 
Registriert seit: 09.11.2004
Beiträge: 194
greenrover
greenrover eine Nachricht über ICQ schicken greenrover eine Nachricht über Yahoo! schicken
Standard

ahh OK, das sit schön wenn der schmerz wieder nachlässt.

Ich hatte das jetzt so gedeutet, das er dann das komparing auf 2 funktionen hintereinander anwedet.....



Big THX
greenrover ist offline   Mit Zitat antworten
Alt 28.02.2006, 13:59  
Erfahrener Benutzer
 
Registriert seit: 25.04.2005
Beiträge: 1.356
HStev zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Zitat:
Zitat von M3g4Star
PHP-Code:
<?php
usort
($a, array ("TestObj""cmp_obj"));
?>
Wenn du die Klasse von außerhalb ansprichst dann geht es so ansonsten würde ich immer $this verwenden
__________________
Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält.
HStev ist offline   Mit Zitat antworten
Alt 28.02.2006, 14:03  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

Ja ich weiß schon nur ich mein es steht so wie ich's gepostet habe genau im Manual und den Rest könnte man doch wirklich selber rausfinden oder ?

*sry* das ich nciht immer gleich die komplette Lösung poste aber ich find man lernt's am besten wenn man versteht wie was funktioniert und nicht nur "copy-paste"

Zitat:
Zitat von greenrover
ahh OK, das sit schön wenn der schmerz wieder nachlässt.
Bitte welcher Schmerz ?
M3g4Star ist offline   Mit Zitat antworten
Antwort


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
Problem mit usort... Canni PHP Tipps 2008 6 12.11.2007 17:00
Probleme mit usort Igäl PHP Tipps 2007 3 20.06.2007 19:13
usort Funktion, kleine Frage zur Arbeitsweise. PHP Tipps 2005-2 4 25.07.2005 23:08

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php usort, php usort class, php usort klasse, usort oop, php usort in klasse, php usort oop, usort in class, php usort in class, usort this, usort in klasse, usort php, usort, usort php oop, php array usort, usort class, usort klasse, usort php class, php usort this, php uasort in klasse, php class usort

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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.