Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Jak dziala ta funkcja, wlasna funkcja wraz z funkcja usort
Darek82
post
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 27.04.2009

Ostrzeżenie: (0%)
-----


Mam taki kod z ksiazki ktorej sie ucze i nie rozumiem czym sa zmienne $x i $y i jak wynik return wplywa na funkcje usort ze ona sortuje zawartosc tablicy moze mi ktos wytlumaczyc?...Jak daje echo tej tablicy $x[1] to nic nie wyswietla, wiec nie wiem czym to jest i jaka ma wartosc

  1. <?php
  2. $produkty = array (array('OPO','AOpony',100),
  3. array('OLE','Olej',10),
  4. array('SWI','BŚwiece',4));
  5.  
  6.  
  7. echo $x[1].'<br>';
  8. function porownaj($x,$y) {
  9. if ($x[1]==$y[1])
  10. return 0;
  11. else if ($x[1]<$y[1])
  12. return -1;
  13. else
  14. return 1;
  15. }
  16. usort($produkty,'porownaj');
  17.  
  18.  
  19.  
  20. ?>
Go to the top of the page
+Quote Post
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

Ostrzeżenie: (0%)
-----


usort zobacz prototyp funkcji i opis i wszystko jasne.

Ten post edytował MateuszScirka 3.12.2009, 13:44:06
Go to the top of the page
+Quote Post
seth-kk
post
Post #3





Grupa: Zarejestrowani
Postów: 444
Pomógł: 79
Dołączył: 26.05.2009

Ostrzeżenie: (0%)
-----


kiepska ksiazka skoro nie potrafi tego wytlumaczyc? ten opis jest calkiem przyzwoity
w skrocie do printowania tabilc uzywa sie print_r a nie echo
usort przekazuje pary elementow sortowanej tablicy i na podstawie zwroconej informacji (0, 1, -1) zamienia je miejscami lub nie (w uproszczeniu)
Go to the top of the page
+Quote Post
Darek82
post
Post #4





Grupa: Zarejestrowani
Postów: 130
Pomógł: 0
Dołączył: 27.04.2009

Ostrzeżenie: (0%)
-----


ale czym jest $x czy to jest jedna tablica array('OPO','AOpony',100) a $y to nastepna? Bo jesli to to czemu nie drukuje jej

kazdy wie a nie powie
Go to the top of the page
+Quote Post
thek
post
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




To konkretne elementy będące porównywane. Tyle, że Twoja wejściowa to tablica 2-wymiarowa a nie da się porównać Array do Array (IMG:style_emoticons/default/smile.gif) Stąd masz porównywanie pierwszych elementów każdego wiersza. Noż ludzie. Popatrz na przykłady w sortowaniu to będziesz wiedział, że x i y to powinny być elementy tablicy w jakiej dokonujesz porównania. Tak więc to elementy jednej i tej samej tablicy. Co z tego, że umiesz czytać skoro mózgu przy tym nie włączasz?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 22:12