Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> System szablonów - parsowanie języka smarty, Dostęp do wartości w tablicy
starach
post
Post #1





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Kod
{$zmienna}
{$tablica.pole}
{$tablica.tablica.pole}

Witam.
Ma ktoś pomysł jak najprościej zamienić powyższe na wartości za tablicy $data gdzie:
  1. <?php
  2. $data['zmienna'] = 'tekst';
  3. $data['tablica']['pole'] = 'wartość pola';
  4. $data['tablica']['tablica']['pole'] = 'kolejne pole';
  5. ?>

Na początku pobieram wszystkie tagi {***} i wykonuje instrukcje blokowe (foreach, if, etc.)
Ze zmiennymi nie miałbym problemu gdyby nie założenie że ma być możliwość używania tablic jako zmiennych.
Podpowiedzcie mi, naprowadźcie mnie na właściwy sposób rozwiązania tego.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sticker
post
Post #2





Grupa: Zarejestrowani
Postów: 611
Pomógł: 19
Dołączył: 28.02.2005
Skąd: Wrocław

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


1) pobierz liste zmiennych i zacznij iterować,
1a) jesli jest na liscie jeszcze nie przerobiona zmienna to pobierz i przetwórz jak poniżej jeśli nie to 8)
2) zapisz zmienną pod tymczasową poprzez '$zmienna'
3) usuń $ ze zmiennej
4) explode z "." jako token na każdej ze zmiennych
5) w zależności ile elementów uzyskałeś stwórz zmienną $data z takimi kluczami jak uzyskałeś
6) przypisz do powstałej zmiennej wartość $zmienna
7) skocz do 1a.
8) dziekuje

apropo ob nie zrozumiałem tu moze być tablica w środku {$tablica.tablica.pole} ? jeśli tak to jeszcze przed explodowaniem sprawdź czy array jesli tak to dopisz klicz do $data[](+)["ten klucz]

Ten post edytował sticker 1.12.2007, 01:26:20
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 10:26