![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 0 Dołączył: 10.04.2002 Skąd: Pruszków Ostrzeżenie: (10%) ![]() ![]() |
Witajcie.
Mam dynamiczną tablice która zawiera w sobie zmienna ilość wartości. np: $nazwa="voipsklep.pl"; $tablica=array('a','b','c','d','e','f'); i z tej tablicy chciałbym zrobić tablicę wielowymiarową tak aby kolejny element tablicy $tablica był kolejnym "wymiarem" nowej tablic. Nie wiem jak to fachowo nazwać. ale wynik chciałbym taki $nowa_tablica=array("a"=> array("b"=> array("c"=> ...... array("f"=>$nazwa) to było przedstawienie obrazowe. w skrócie chodzi mi o: $nowa_tablica['a']['b']['c']['d']['e']['f']=$nazwa; Próbowałem na różne sposoby ale niestety nie mam pomysłów na rozwiązanie tego problemu. Za pomoc wszystkim z góry dziękuje. -------------------- Centrale telefoniczne VOIP - www.astrocom.pl
VOIP |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Ale czemu chcesz to zrobic tak? Ten post edytował wookieb 30.01.2009, 14:19:00 -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 0 Dołączył: 10.04.2002 Skąd: Pruszków Ostrzeżenie: (10%) ![]() ![]() |
Ale czemu chcesz to zrobic tak? Dziękuje za pomoc. Już sprawdzam jak Twoje rozwiązanie działa. Dlaczego tak robię. Otóż muszę stworzyć plik xml z tablicy php. do tego mam odpowienią klasę i z tym nie ma problemu. xml generuje drzewko katalogów (przy generowaniu nie wiemy ile będzie podkatalogów a w nich kolejnych podkatalagów a w nich [...]) i to własnie jest do generowania struktury podkatalogów. -------------------- Centrale telefoniczne VOIP - www.astrocom.pl
VOIP |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 85 Pomógł: 4 Dołączył: 1.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Można też tak jeśli o to chodzi
-------------------- Space Studio
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
i to własnie jest do generowania struktury podkatalogów. Aha to dobrze. Pytam bo wole wiedzieć czy to nie jest jakiś kolejny "genialny" pomysł programistyczny ![]() Mój przykład jest sprawdzony. Działa Ten post edytował wookieb 30.01.2009, 14:18:38 -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 0 Dołączył: 10.04.2002 Skąd: Pruszków Ostrzeżenie: (10%) ![]() ![]() |
nie jednak nie poradziłem sobie z problemem.
rozwiązanie kolegi wookieb jest bardzo dobrym rozwiązaniem ale działa na referencjach i nie potrafię tego przystosować do swoich potrzeb. ponieważ wyciągam kilka wpisów z bazy danych to tablice te mi mieszają uzywajac array_merge. Otóż wygląda to tak: mam takie wpisy w bazie danych: Kod id_kat id_rodzic nazwa 1 0 telefony voip 2 0|1 linksysy 3 0|1 polycom 4 0 bramki voip 5 0|4 atcom 6 0|4|5 at1 7 0|4|5|6 Nowa kategoria 6 8 0|4|5 at2 9 0|4 d-link 10 0 routery voip wybaczcie za formatowanie tesktu. ale nie wiedziałem jak to tu wstawić ładnie id_kat - to normalnie id danego katalogu id_rodzic - jest to drzewko id_kat aby dojsc do danego podkatalogu np: 0|4|5|6 - nowa kategoria 6 0 - katalog glowny. 4 - w katalogu glownym jest katalog bramki voip o id 4 5 - w katalogu bramki voip (4) znajduje sie katalog atcom o id 5 6 - w atcom znajduje sie at1 o id 6 -- i w tym katalogu jest nasz katalog "nowa kategoria 6" ktore ma id 7 i teraz muszę stworzyć z tego tablicę odwzorowującą katalogi $tablica[0]="telefony voip"; $tablica[0][1]="linksys"; $tablica[0][2]='polycom'; $tablica[1]="bramki voip"; $tablica[1][1]="atcom"; $tablica[1][2][1]="at1"; $tablica[1][2][1][1]='nowa kategoria'; już nie wiem sam czy dobrze myślę. Chciałbym zrobić te kategorie i ich hierarchię w jednej tablicy php. Ten post edytował rogeros 30.01.2009, 15:20:19 -------------------- Centrale telefoniczne VOIP - www.astrocom.pl
VOIP |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 206 Pomógł: 18 Dołączył: 6.03.2006 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
jesli wychodzi ci cos takiego:
to na pewno zle myslisz ![]() ewentualnie mozesz sobie zrobic klase i przeciazyc metody interfejsu ArrayAccess aby wykrywac, czy zapisujesz cos glebiej, czy bezposrednio na danym poziomie. a jakim problemem sa tutaj referencje? nie bardzo rozumiem jaki jest problem w tym, ze wookieb uzyl referencji - nawet jak ich nie rozumiesz, to tymbardziej - nie dotykaj i tyle. dal gotowe rozwiazanie. -------------------- Wrzasq.pl
Tworzenie stron i aplikacji internetowych. Chillout Development - tworzenie stron i aplikacji internetowych. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 97 Pomógł: 0 Dołączył: 10.04.2002 Skąd: Pruszków Ostrzeżenie: (10%) ![]() ![]() |
Udało mi się rozwiązać problem za wielką zasługą kolegi wookieb.
Bardzo mi pomógł. Chwała mu za to. Dzięki wookieb. A oto rozwiązanie może się komuś przyda. dane wejściowe z bazy danych
na początku wyciągamy dane z bazy i wrzucamy je do tablicy
następnie z danych z bazy tworzymy tablicę z katalogami i podkatalogami za pomocą funkcji
dzięki tej funkcji otrzymujemy tablicę w postaci drzewka z z katalogami i podkatalogami (w podkatalogach kolejne podkatalogi a w nich kolejne itd) teraz zostało nam z takiej tablicy utworzyć xml-a. do tego użyjemy kolejnej funkcji
i dzięki temu otrzymujemy piękny gotowy plik xml
i to wszystko. pozdrawiam i jeszcze raz dziękuje wookieb. Do administratorów. Przez pomyłkę utworzyłem nowy post zamiast odpowiedzieć na swój własny. bardzo proszę scalić tego posta z tematem Temat: arrayand39aand39and39band39and39cand39__arrand39aand39and39band39and39cand39. // zrobione // ayeo Ten post edytował ayeo 3.02.2009, 09:27:20 -------------------- Centrale telefoniczne VOIP - www.astrocom.pl
VOIP |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 22:10 |