Rozdział 2. Składnia szablonów

Spis treści

2.1. Tryby kompilatora
2.2. Prolog i DTD
2.3. Encje
2.4. CDATA
2.5. Wyrażenia
2.5.1. Bloki
2.5.2. Operatory
2.5.3. Wartości
2.5.4. Funkcje
2.5.5. Obiekty i klasy
2.6. Funkcje
2.7. Instrukcje
2.7.1. Sekcja
2.7.2. If
2.8. Atrybuty
2.9. Komponenty
2.10. Pozostałe
2.10.1. Tryb tekstowy
2.10.2. Szablony kompilacyjne
2.10.3. Uwagi

W tym rozdziale opiszemy składnię szablonów używanych przez OPT. Bazuje ona na języku XML i jeżeli jesteś z nim zaznajomiony, wystarczy, że poznasz jedynie zestaw instrukcji oraz sposób osadzania danych w szablonie. Osoby, które dotąd nie zetknęły się z XML-em, powinny zacząć swoją przygodę właśnie od niego.

Przetworzenie każdego szablonu wymaga nieco czasu, dlatego OPT dąży do maksymalnego ułatwienia sobie życia. Gdy po raz pierwszy zażądasz obsługi takowego, OPT uruchamia proces zwany kompilacją. Polega on na przetłumaczeniu szablonu na język, który może być znacznie szybciej wykonany - w tym wypadku wynikiem kompilacji jest zwyczajny skrypt PHP osadzający przekazane do parsera dane w kodzie HTML. Przy kolejnym żądaniu OPT odczytuje z dysku uprzednio skompilowany kod i w ten sposób oszczędza sporo czasu. Niesie to za sobą pewne skutki, których należy być świadomym. Przede wszystkim OPT nie jest modelem DOM i nie należy się łudzić, że skrypt w dowolnym momencie będzie mógł zażyczyć sobie np. aby z szablonu zniknął znacznik DIV, o ile nie zostało to zaprogramowane w samym szablonie. W praktyce jednak okazuje się, że dla wielu użytkowników ograniczenie to ma jedynie charakter stricte akademicki, gdyż nie potrzebują oni tego typu rozwiązań. W przeciwnym wypadku należy zastanowić się, czy faktycznie system szablonów jest najlepszym wyborem.

Zalecamy przeczytanie tego rozdziału także osobom, które będą korzystać z OPT po stronie skryptu, gdyż znajdą tu wiele uwag praktycznych dotyczących zależności między ustawieniami parsera i formatem danych mu przekazywanych, a szablonami. Wiemy też, że będą go czytać osoby niekoniecznie obeznane z programowaniem, a zajmujące się bardziej kodem HTML i grafiką. Dlatego też wiele fragmentów zostało dodatkowo oznakowanych kolorowymi paskami widocznymi po lewej stronie ekranu. Ich kolor oznacza, dla kogo przeznaczone są podane tam informacje:

  1. Brak paska - dla wszystkich.
  2. Pomarańczowy pasek - funkcja związana z programowaniem, lecz łatwa do zrozumienia i mogąca okazać się przydatną.
  3. Czerwony pasek - funkcja stricte programistyczna, prawdopodobnie nie będziesz musiał jej używać.
  4. Niebieski pasek - uwagi dla programistów PHP tworzących skrypty z wykorzystaniem OPT. Twórcy szablonów w ogóle nie muszą zawracać sobie nimi głowy, chyba że są niezwykle ciekawi świata.

Ponadto będziemy korzystać z następującej terminologii:

  1. Szablon - plik ze szkieletem kodu, w który należy wstawić dane.
  2. Skompilowany szablon - plik szablonu skompilowany do postaci kodu PHP.
  3. Wynik działania, dokument wynikowy - kod będący wynikiem działania parsera gotowy do pokazania internaucie z danymi wstawionymi w wyznaczone miejsca szablonu. Wynik działania może powstać z przetworzenia kilku szablonów.