Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Operacje na obiektach
miedzna
post 21.06.2016, 14:21:58
Post #1





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Hej, mam dane objektowe jak poniżej. Jak zmienić klucze
[0] => stdClass Object
[1] => stdClass Object
[2] => stdClass Object
[3] => stdClass Object
[4] => stdClass Object

na odpowiedniki z pozbioru, czyli
[id] => 3
[id] => 2
[id] => 2
[id] => 1
[id] => 1

czyli żeby było tak
[3] => stdClass Object
[2] => stdClass Object
[2] => stdClass Object
[1] => stdClass Object
[1] => stdClass Object

  1. (
  2. [0] => stdClass Object
  3. (
  4. [id] => 3
  5. [clientID] => 123
  6. )
  7.  
  8. [1] => stdClass Object
  9. (
  10. [id] => 2
  11. [clientID] => 456
  12. )
  13.  
  14. [2] => stdClass Object
  15. (
  16. [id] => 2
  17. [clientID] => 789
  18. )
  19.  
  20. [3] => stdClass Object
  21. (
  22. [id] => 1
  23. [clientID] => 1011
  24. )
  25.  
  26. [4] => stdClass Object
  27. (
  28. [id] => 1
  29. [clientID] => 1234
  30. )
  31. )
Go to the top of the page
+Quote Post
nospor
post 21.06.2016, 14:27:41
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nie da sie. Tablica moze posiadac tylko jeden dany klucz

Mozasz natomiast pod dana wartosci trzymac tablice obiektow zamiast obiektu.

Napisz lepiej co kombinujesz


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
miedzna
post 21.06.2016, 14:33:49
Post #3





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Muszę z tych danych magicznym foreach otrzymać coś takiego:
[id] => 3
- [clientID] => 123

[id] => 2
- [clientID] => 456
- [clientID] => 789

[id] => 1
- [clientID] => 1011
- [clientID] => 1234

Czyli tabelkę, która mi pokaże wylistowane procesy ([id] => 3,2,1) i do każdego procesu przypisze odpowiednie clientID, których może być wiele na każdym procesie. Zapytanie do bazy mogę zrobić jedno, gdzie łączę kilka tabel i dostaję wiele wierszy, czyli na każdego clientID jeden wiersz. I teraz kombinuję jak to ułożyć sensownie w tabelę.
Go to the top of the page
+Quote Post
nospor
post 21.06.2016, 14:38:08
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nom czyli masz miec array w array

Tu masz opisane na paru przykladach jak sie grupuje dane w ten sposob
http://nospor.pl/grupowanie-wynikow.html


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
miedzna
post 21.06.2016, 14:54:07
Post #5





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Przeczytałem, ale jakoś nie mogę się połapać... sad.gif U mnie są obiekty, u Ciebie tablica
Go to the top of the page
+Quote Post
nospor
post 21.06.2016, 14:59:18
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




U mnie sa wartosci tak samo jak i u ciebie. Tyle ze u mnie wartosc jest tekstem/liczba a u ciebie tablica. Wartosci cie nie interesuja. W obu przypadkach mamy tablica, ktora znowu zawiera tablice wartosci. Interesuje cie jak utworzyc tablice w tablicy by dla danego klucza miec kilka wartosci i to tam masz wyjasnione. Ty wlasnie potrzebujesz dla kazdego klucza stworzyc tablice obiektow by moc trzymac wiecej niz jeden obiekt dla danego klucza w tablicy


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
miedzna
post 21.06.2016, 15:44:48
Post #7





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Jakoś dziś nie mogę tego ogarnąć, chyba zmęczenie materiału.
Ty masz pod kluczem [products] => Array kolejnego arraya, a ja mam tylko 1 poziom smile.gif
Jakoś nie łapię się.

Ten post edytował miedzna 21.06.2016, 15:47:28
Go to the top of the page
+Quote Post
nospor
post 21.06.2016, 15:55:53
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
a ja mam tylko 1 poziom
Wlasnie, masz jeden poziom a masz stworzy dwa. Dokladnie to samo jest u mnie. Najpierw jest jeden poziom a potem robie z tego drugi by pod kluczem np. 2 miec trzy obiekty ktore naleza do tego klucza.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
IAmBoskiM
post 21.06.2016, 18:37:11
Post #9





Grupa: Zarejestrowani
Postów: 72
Pomógł: 11
Dołączył: 8.05.2016

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


  1. $arr = array(); // nie chce mi sie kopiowac ani nic tresci tej tablicy, ale to jest ta 0 1 2 3 itd
  2. $arr2 = array(); // pusta tablica
  3. foreach ($arr as $value) {
  4. $arr2[$value->id][] = $value->clientID;
  5. }
  6. // I wtedy masz cos takiego w $arr2, jezeli sie nie myle:
  7. 1 => array(
  8. 0 => $clientid1,
  9. 1 => $clientid2),
  10. 2 => array(
  11. 0 => $clientid3,
  12. 1 => $clientid4),
  13. 3 => array(
  14. 0 => $clientid5)
  15. )
Go to the top of the page
+Quote Post
miedzna
post 22.06.2016, 13:07:13
Post #10





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Dzięki za pomoc! smile.gif
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: 12.06.2025 - 22:17