konto usunięte

Temat: Template'y i parsowanie kodu php

Mam taki drobny problemik.

W kodzie mam klasę CTemplate, która zamienia po prostu {WPISY} z szablonów .htm na dane wartości w plikach .php. Problemem jest dołączenie do takich plików poprzez np. include dowolnego pliku php - file_get_contents zwraca string, eval() nic nie pomaga, gdyż skrypt ten zawiera zarówno kod html, jak i php oraz wyskakiwanie. Cóż poradzić? Jak dołączyć coś do tych "szablonowych" podstron? Dodam, iż najpierw następuje assign wartości, po czym klasa wykonuje metodę Get() szablonu i go wyświetla. To nie smarty, więc nie chcę nawet widzieć postów w stylu "użyj {php}{/php}" ;).

Czy jest jakiś sposób, by zapisać wynik pracy skryptu php do jakiegoś tymczasowego pliku i pobrać końcowy html? (w pamięci).

Pozdrawiam.
Tomasz Wójcik

Tomasz Wójcik inżynier informatyk,
specjalizacja: sieci
komputerowe

Temat: Template'y i parsowanie kodu php

[author]Jakub

konto usunięte

Temat: Template'y i parsowanie kodu php

W swoim frameworku mam to rozwiązane w taki sposób.

W pliku szablonu znajduje się kod HTML z elementami PHP, np.:
<div>Witaj<?=$username?></div>

Następnie dołączam ten szablon do skryptu PHP w taki sposób:

$zmienne = array();
$zmienne['username'] = 'Jan Kowalski';
ob_start();
extract($zmienne);
require_once("szablon.tpl");
$content = ob_get_contents();
ob_end_clean();

A na koniec:
echo $content;

Tak to wygląda w uproszczeniu. Cały trik polega na użyciu funkcji extract i output buffering.

konto usunięte

Temat: Template'y i parsowanie kodu php

Dziękuję wszystkim za wartościowe porady.

Następna dyskusja:

Efektywa praca na zdalnym r...




Wyślij zaproszenie do