Als je een pagina inlaadt met file_get_contents en hem vervolgens afdrukt worden de <?php tags letterlijk geprint.

Hoe kan ik file_get_contents gebruiken en toch de php code in het bestand uit laten voeren?
[php]include[/php]().
Dat had ik dus eerst San, ik ben bezig mn eigen MVC te schrijven voor de duidelijkheid.

Als ik include gebruik krijg ik onder elke pagina een 1 (misschien true!?)

<?php

$General->setContent(require_once(TEMPLATE_DIRECTORY . PAGES_DIRECTORY . $General->getStandardContentUrl()));

?>

EDIT: Wth, als ik mijn getContent op een andere plek neerzet is de 1 verdwenen, vreemd zootje soms die PHP...
Van php.net.



Example #5 include() and the return() statement
return.php
<?php

$var = 'PHP';

return $var;

?>

noreturn.php
<?php

$var = 'PHP';

?>

testreturns.php
<?php

$foo = include 'return.php';

echo $foo; // prints 'PHP'

$bar = include 'noreturn.php';

echo $bar; // prints 1

?>
Het enige wat ik doe in setContent is de var content van de klasse General op de inhoud van dat bestand zetten, vervolgens haal ik het met get weer op, ik echo dus geen include.

Nu ik de getContent verplaatst heb doet hij nog steeds EXACT hetzelfde, de 1 is echter vreemd genoeg verdwenen...
Zo:
<?php
ob_start();
include('file.php');
$data = ob_end_clean();
?>

Reageren