Snimanje uključenja u promenljivu u PHP
Neka imamo određeni fajl:
<div>
<?= 'test' ?>
</div>
Hajde da u glavnom fajlu snimimo tekst našeg fajla u promenljivu:
<?php
$res = file_get_contents('test.php');
?>
Imaćemo, međutim, problem - pri snimanju u promenljivu PHP kod našeg fajla neće biti izvršen.
Da bi PHP kod uključenog fajla
bio izvršen, potrebno je koristiti operator
include. Problem je, međutim, u tome,
da ovaj operator odmah ispisuje podatke na
ekran, pa rezultat uključivanja ne može
biti snimljen u promenljivu.
Ali to se ipak može uraditi, ako se koristi lukav trik:
<?php
ob_start();
include 'test.php';
$res = ob_get_clean();
?>
Oformimo kod trika u funkciju:
<?php
function getFile($name) {
ob_start();
include $name;
return ob_get_clean();
}
?>
Iskoristimo našu funkciju za dobijanje fajla u promenljivu:
<?php
$res = getFile('test.php');
echo 'index' . $res;
?>
Napravite fajl koji će generisati iz niza dana padajući spisak dana u nedelji. Snimite rezultat u promenljivu u vašem glavnom fajlu. Ispišite ovu promenljivu na nekoliko mesta u fajlu.