Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Dzielenie tablic?
mperlam
post 6.04.2010, 18:36:50
Post #1





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 24.04.2009

Ostrzeżenie: (30%)
XX---


Cześć. Mam taki problem. Mam dane w formie:

  1. 548154165181,hjdadgadhadh
  2. 545615805415,dasdadasd
  3. itd.


Chcę zmienić je w tablice i posortować. Zrobiłem więc to za pomocą explode:

  1. $info=explode("\n", $info);


Niestety po zastosowaniu funkcji sort wszystko jest sortowane wg. liczb na początku, chciałbym aby wszystko było sortowane wg. liter po przecinku. Czy jest taka możliwość? Proszę o pomoc


--------------------
Go to the top of the page
+Quote Post
Lion_87
post 6.04.2010, 19:20:19
Post #2





Grupa: Zarejestrowani
Postów: 850
Pomógł: 120
Dołączył: 15.02.2007
Skąd: Łódź

Ostrzeżenie: (10%)
X----


Tak. Jest taka możliwość.
Go to the top of the page
+Quote Post
blooregard
post 6.04.2010, 19:25:20
Post #3


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Myślę, że dobrym rozwiązaniem będzie napisanie własnej funckji sortującej i użycie jej jako parametru w usort()
http://pl2.php.net/manual/pl/function.usort.php

A w swojej funkcji:
- przesyłąsz dwa kolejne elementy w takiej postaci, w jakiej je masz teraz
- rozbijasz stringi na przecinku
- porównujesz części zawierające litery


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
mperlam
post 6.04.2010, 19:27:40
Post #4





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 24.04.2009

Ostrzeżenie: (30%)
XX---


Stworzyłem funkcję i wykorzystałem usort() o której mówisz. Może się komuś przyda:

  1. function sortujnazwy($a,$b) {
  2. $poza=strpos($a, ',');
  3. $pozb=strpos($b, ',');
  4. return strcmp(substr($a, $poza+1, 100), substr($b, $pozb+1, 100));
  5. }


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 09:46