Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] generowanie kodu php do zmiennej
Forum PHP.pl > Forum > Przedszkole
nu_moon
Witam!

Mam taka oto zagadkę.

Powiedzmy że mam jakiś przykładowy kod html/php w jednym z plików, np. htmlowa tabelka z wstawionym za pomoca phpowych znaczników aktualnym czasem. Samo wykonanie tego pliku powoduje oczywiście wydrukowanie tabelki i informacji jakie wydrukował php w odpowiednich miejscach.

Jesli w którymś miejscu w progamie wywołam taki plik instrukcja require lub include, dostane na ekranie w danym miejscu dokładnie taki output.
Teraz pytanie
Czy można w jakiś sposób uzyskać taki efekt jak w powyższym przykładzie, tyle że zamiast drukować wszystko na ekran chciałbym taki output mieć w z miennej. Czytałem o funkcji eval(), ale zdaje sie ze nie akceptuje ona kodu html/php razem, przynajmniej ja dostaje jakies błędy.
akurczyk
Żamień w kodzie <?php na ". i odwrotnie, a później załaduj kod do zmiennej:
  1. <?php
  2. $zmienna = "kod";
  3. ?>

Żeby ją wydrukować wystarczy:
  1. <?php
  2. echo $zmienna;
  3. ?>
blooregard
<?php

ob_start();  //start buforowania

?>

<table>

<tr><td><?php echo $zmienna_w_tabelce; ?></td></tr>

</table>

... (itd - caly kod tabelki ) ...                     // jest ona BUFOROWANA, nie wyswietla sie na ekranie

<?php

$zmienna = ob_get_contents();    // tabelke masz teraz cala w zmiennej $zmienna

ob_end_clean();  //czyscisz bufor i zapobiegasz wyswietleniu jego zawartosci

?>

A wyświetlenie tableki realizujesz jedną instrukcją:

echo $zmienna;
batman
@blooregard
Proszę poprawić bbcode.

Przenoszę na przedszkole.
nu_moon
Cytat(blooregard @ 27.09.2008, 18:42:36 ) *
<?php

ob_start();  //start buforowania

?>

<table>

<tr><td><?php echo $zmienna_w_tabelce; ?></td></tr>

</table>

... (itd - caly kod tabelki ) ...                     // jest ona BUFOROWANA, nie wyswietla sie na ekranie

<?php

$zmienna = ob_get_contents();    // tabelke masz teraz cala w zmiennej $zmienna

ob_end_clean();  //czyscisz bufor i zapobiegasz wyswietleniu jego zawartosci

?>

A wyświetlenie tableki realizujesz jedną instrukcją:

echo $zmienna;


Jakoś nie wpadłem na to że można tego mechanizmu użyć w ten sposób, ale pomogło
Dzięki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.