Skriving av inkludering til variabel i PHP
La oss si at vi har en fil:
<div>
<?= 'test' ?>
</div>
La oss i hovedfilen skrive teksten fra filen vår til en variabel:
<?php
$res = file_get_contents('test.php');
?>
Vi vil imidlertid få et problem - når vi skriver til variabelen, vil PHP-koden i filen vår ikke bli utført.
For at PHP-koden i den inkluderte filen
skal utføres, må vi bruke operatoren
include. Problemet er imidlertid at
denne operatoren umiddelbart sender data til
skjermen, så resultatet av inkluderingen kan ikke
skrives til en variabel.
Men det er likevel mulig å gjøre dette ved å bruke et smart triks:
<?php
ob_start();
include 'test.php';
$res = ob_get_clean();
?>
La oss sette koden for trikset i en funksjon:
<?php
function getFile($name) {
ob_start();
include $name;
return ob_get_clean();
}
?>
La oss bruke funksjonen vår for å hente filen til en variabel:
<?php
$res = getFile('test.php');
echo 'index' . $res;
?>
Lag en fil som skal generere en nedtrekksliste for ukedager fra en array. Skriv resultatet til en variabel i hovedfilen din. Vis denne variabelen på flere steder i filen.