![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 199 Pomógł: 2 Dołączył: 9.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam
potrzebuje posortować ja symbol ale w kolejności takiej: NOR, USD, EUR, CHF , GBP Próbowałem z usort ale w tym przypadku chyba sie nie przyda... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
usort jak najbardziej sie przyda. W funkcji porównującej wystarczy stworzyć tablicę, gdzie kluczami będą skróty walut, a wartościami wagi ważności, np dla NOR będzie 1, a dla EUR będzie 3. Możesz porówywać wagi i na podstawie wyniku zwracać wartość.
-------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%) ![]() ![]() |
dlaczego się nie przyda?
-------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Zawsze możesz swoją tablicę przekonwertować do takiego formatu:
A później już chyba wiadomo jak to wydrukować (bo zakładam, że o to chodzi). Takie rozwiązanie będzie ciut bardziej optymalne niż sortowanie i łatwiejsze w implementacji. Ale tak jak zostało napisane wcześniej - usort zrobi robotę. Ten post edytował sowiq 6.08.2013, 09:01:23 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 199 Pomógł: 2 Dołączył: 9.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
Na pewno nie zadziała. W zmiennej a oraz b są elementy tablicy, a w Twoim przypadku są to tablice. Instrukcja:
rzutuje tablice w zmiennej a na string czego rezultatem będzie
Po drugie, odejmowanie także nie ma prawa zadziałać. Funkcja ma zwrócić 1 jeśli a jest większe od b, -1 jeśli b jest większe od a lub 0 jeśli a i b są równe. Aby to rozwiązać należy z zmiennych a i b wczytać wartość kluczy symbol i następnie przy pomocy if-ów porównać wagi tych wartości i zwrócić odpowiednią wartość. -------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Po drugie, odejmowanie także nie ma prawa zadziałać. Funkcja ma zwrócić 1 jeśli a jest większe od b, -1 jeśli b jest większe od a lub 0 jeśli a i b są równe. Kolego, gwoli ścisłości, nie masz racji. Wartości zwracane to nie "-1", "0", "1", tylko "mniej niż zero", "0", "więcej niż zero". Więc równie dobrze zamiast -1 możesz zwracać -2, -999 czy -312. Ale -0.9 już nie. Cytat The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second. Cytat Caution Returning non-integer values from the comparison function, such as float, will result in an internal cast to integer of the callback's return value. So values such as 0.99 and 0.1 will both be cast to an integer value of 0, which will compare such values as equal. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
Fakt, przepraszam, za wprowadznie w błąd.
-------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 15:39 |