![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Czy ktoś mógłby mnie nakierować w jaki sposób tablicę pobraną przez PDO::FETCH_ASSOC: array 0 => array 'subjectId' => string '1' (length=1) 'subjectName' => string 'biologia' (length=8) 1 => array 'subjectId' => string '2' (length=1) 'subjectName' => string 'chemia' (length=6) 2 => array 'subjectId' => string '3' (length=1) 'subjectName' => string 'fizyka' (length=6) 3 => array 'subjectId' => string '4' (length=1) 'subjectName' => string 'geografia' (length=9) 4 => array 'subjectId' => string '5' (length=1) 'subjectName' => string 'historia' (length=8) 5 => array 'subjectId' => string '6' (length=1) 'subjectName' => string 'j. niemiecki' (length=12) 6 => array 'subjectId' => string '7' (length=1) 'subjectName' => string 'j. polski' (length=9) 7 => array 'subjectId' => string '8' (length=1) 'subjectName' => string 'matematyka' (length=10) 8 => array 'subjectId' => string '9' (length=1) 'subjectName' => string 'muzyka' (length=6) 9 => array 'subjectId' => string '10' (length=2) 'subjectName' => string 'plastyka' (length=8) 10 => array 'subjectId' => string '11' (length=2) 'subjectName' => string 'wi' (length=2) Przekształcić do takiej postaci: array 1 => string 'biologia' (length=8) 2 => string 'chemia' (length=6) 3 => string 'fizyka' (length=6) 4 => string 'geografia' (length=9) 5 => string 'historia' (length=8) 6 => string 'j. niemiecki' (length=12) 7 => string 'j. polski' (length=9) 8 => string 'matematyka' (length=10) 9 => string 'muzyka' (length=6) 10 => string 'plastyka' (length=8) Pozdrawiam, mlawnik -------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przelatujesz po tej tablicy przy pomocy FORECH i w kazdym obrocie FOREACH tworzysz swoja wlasna plaską tablice.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Chyba że masz już php 5.5 wtedy wystarczy Ci
http://www.php.net/manual/en/function.array-column.php a jak nie to patrz w komentarze -------------------- I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy. QueryBuilder, Mootools.net, bbcradio1::MistaJam http://www.phpbench.com/ |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
php 5.5 będę sobie musiał skompilować
![]() Dobra, rozwiązałem. Dla potomnych:
PS o, fajne to array_column, zapamiętam sobie. EDIT Jeszcze dla potomnych bez php >= 5.5 implementacja array_column w plain php https://github.com/ramsey/array_column Ten post edytował mlawnik 23.07.2013, 11:21:40 -------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
![]()
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Powinno być +1 przy key.
@nospor, dziękuję za gotowca, wykorzystam go. Mógłbyś mi jednak wytłumaczyć co zrobiłem źle? tzn. Działa, ale skoro w twoim poście wystąpił facepalm, to coś jest nie tak. -------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie, twoj kod nie dziala poprawnie. CHciales jako klucz przeciez miec wartosc pola subjectId a nie wartosc klucza tablicy zwroconej przez PDO.... to chyba zasadnicza roznica, nie sadzisz? I nie, zadne +1 tutaj nie pomoze, bo gdy twoje wartosci z pola subjectId beda zupelnie rozne lub z dziurami to twoj algorytm szlag trafia.
Poza tym robisz dwukrony foreach, przez co twoj skrypt wykonuje 2 x wiecej operacji. Jakby pol bylo np.4 to by robil 4x wiecej operacji. I tez przypisuje ci cudem wartosc z pola subjectName tylko dlatego ze to pole jest ostatnie. Jakby nie bylo ostatnie to bys tej wartosci w wynikowej tablicy nie mial. A teraz jeszcze raz przyjrzyj sie mojemu kodowi po przeczytaniu tych uwag. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 49 Dołączył: 12.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Poniższe działa dobrze:
-------------------- Pozdrawiam,
mlawnik Cytat(nospor) Jedzmy gówno.... miliony much nie może się przecież mylić |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie, w tym wypadku $key nie jest potrzebne
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 23:49 |