Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Operacje na tablicach obiektów
in5ane
post
Post #1





Grupa: Zarejestrowani
Postów: 1 335
Pomógł: 34
Dołączył: 9.11.2005
Skąd: Wrocław

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


Hej, mam problem, bo nie działa mi ten kod jak powinien. Mam glowny produkt, ktory zawiera informacje, ale jesli któryms z pobocznych produktów (od tego glownego produktu) znajdzie sie taki sam rodzaj informacji (np. rozdzielczosc monitora), tzn., ze ten rodzaj informacji jesli istnieje w glownym produkcie, to ma z niego wywalic, bo dany rodzaj informacji ma wazniejszy priorytet w ktoryms z pobocznych produktow. Pomyslalem, ze zrobie to w zaprezentowany ponizej sposob, ale cos nie chodzi za dobrze. Moze ma ktos jakis pomysl?
  1. $kopiaGlownychInformacji = array();
  2. foreach ($glowneInformacje as $i => $glownaInformacja)
  3. {
  4. foreach ($poboczneProdukty as $pobocznyProdukt)
  5. {
  6. foreach ($pobocznyProdukt as $pobocznaInformacje)
  7. {
  8. if ($glownaInformacja->name != $pobocznaInformacje->name)
  9. {
  10. $kopiaGlownychInformacji ['$glownaInformacja->name'] = new stdClass();
  11. $kopiaGlownychInformacji ['$glownaInformacja->name']->name = $glownaInformacja->name;
  12. }
  13. else
  14. {
  15. unset($kopiaGlownychInformacji [$glownaInformacja->name]);
  16. }
  17. }
  18. }
  19. }


Np. w glownym produkcie znalazlo: rozdzielczosc monitora i wtedy dla tej informacji sprawdza wszystkie poboczne produkty, pozniej dla kazdego pobocznego produktu sprawdza wszystkie jego rodzaje informacji i jesli nie natrafi na taki, to ma dodac to do $kopiaGlownychInformacji, ale gdy natrafi, to ma probowac usunac z tej tablicy obiektow taki rodzaj informacji. Zaprezentowalem to w taki bardzo uproszczony sposob, aby kazdy zrozumial, o co mi chodzi. Moze ma ktos pomysl. Zaznacze, ze na tej glownej tablicy $glowneInformacje nie moge pracowac. Musi ona pozostac niezmieniona.


--------------------
> > > Tworzenie stron < < <
Go to the top of the page
+Quote Post
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Czy tutaj $kopiaGlownychInformacji ['$glownaInformacja->name'] na pewno chciałeś użyć apostrofów? Wydaje mi się (nie wnikając w logikę całego kodu), że powinno być bez nich.
Go to the top of the page
+Quote Post
in5ane
post
Post #3





Grupa: Zarejestrowani
Postów: 1 335
Pomógł: 34
Dołączył: 9.11.2005
Skąd: Wrocław

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


Cenna uwaga. Ale przy okazji wpadłem na troszkę inny pomysł. Najpierw tworzę całą kopię tablicy obiektów i dopiero gdy znajdzie jakiś po drodze to już z niej usuwam. I teraz działa, jak należy.


--------------------
> > > Tworzenie stron < < <
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 Aktualny czas: 21.08.2025 - 19:40