Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [tablice] Funkcja wrzucająca do tablicy
Asmox
post
Post #1





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

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


Jeżeli mamy tabelę mysql trzymającą drzewo IP, przy pobieraniu danych można automatycznie ułożyć z kolejnością kategorii, czyli np.
1.1.1
1.2.1
1.2.2
1.3.1
1.4.1
1.4.2
i tak dalej i tak dalej
Jeżeli zrobimy na takim pojedynczym IP explode, to mamy całą jakby strukturę. I tu mam problem, bo chciałbym zrobić funkcję wrzucającą to tablic o jakimś zagłębieniu. Ma ona jako argumenty mieć podane zmienną tablicy i tablicę zawierającą klucze kolejnych wymiarów, czyli:
  1. function wrzucDoTablicy($tablica, array $zaglebienia, $zmienna) {
  2. /* jakis kod funkcji */
  3. }
  4. $tablica = array();
  5. $zaglebienie = array('a', 2, 'foo', 'bar')
  6. $zmienna = 'fool';
  7. wrzucDoTablicy($tablica, $zaglebienie, $zmienna);
  8. // $tablica['a'][2]['foo']['bar'] = 'fool';

Nie wiem jak to zaimplementować / nie wiem czy jest domyślna funkcja, która mogła by mi pomóc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Asmox
post
Post #2





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

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


Ops, napisałem to trochę niezrozumiale, mój błąd już się poprawiam
Moje drzewo jest tworzone na podstawie indeksów, więc się je podaje po kropkach tworząc coś na kształt IP
Przykład:
Kod
id | node | label
--------------------
1  | null | Strony
--------------------
2  | null | Linki
--------------------
3  | 1    | Webmastering
--------------------
4  | 2    | Download
--------------------
5  | 1    | Kuchnia
--------------------
6  | 1.5  | Kuchnia Włoska
--------------------
7  | 1.3  | PHP
--------------------
8  |1.3.7 | Tablice

Node przybiera taki węzeł, z którego można wyciągnąć id rodzica, poziom zagłębienia depth itd itd... ale chodzi mi o to, żeby rozbijając ten ip node użyć nowej tablicy do stworzenia całego drzewa, jako zagnieżdżoną tablicę w PHP
  1. // Bierzemy dane z rekordu o id 8
  2. $node = '1.3.7';
  3. $id = 8;
  4. $rootNode = explode($node)
  5. arrayInsert($tree, $rootNode, $id)


Ten post edytował Asmox 30.12.2010, 19:39:11
Go to the top of the page
+Quote Post

Posty w temacie


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: 7.10.2025 - 07:57