Goede avond,


Misschien een rare vraag maar kun je op een of andere manier de content van een file in een PHP variable stoppen?

<?php
$temp = include_once('../templates/success.php');
?>
include doet niks anders dan dat bestand uitvoeren. Dus ik snap niet wat je hiermee wilt bereiken.
Ja, dat kan. Doe in success.php iets van:
<?php

return 'de waarde die je in $temp wilt hebben';

?>

(het mag ook een array, whatever zijn).
Ik vrees dat je zoekt naar


ob_start();
include_once('../templates/success.php');

$temp = ob_get_clean();



[size=xsmall]Toevoeging op 05/05/2020 20:19:22:[/size]

"vrees" omdat het naar mijn idee een grote afhankelijkheid creëert tussen 2 stukken code die kennelijk niet veel met elkaar te maken hebben.
Samenvattend, met dank aan Jan R:
<?php
$temp = file_get_contents('../templates/success.php');
print $temp;
?>
Het lijkt mij nogal voorbarig om een winnaar uit te roepen zonder dat je weet hoe dit bestand gebruikt gaat worden.

Zo doet file_get_contents() niets met scope.

Omdat het een template betreft zijn wellicht output buffering of een include met een return-waarde beide betere alternatieven.
Thomas van den Heuvel op 06/05/2020 16:25:57

Het lijkt mij nogal voorbarig om een winnaar uit te roepen zonder dat je weet hoe dit bestand gebruikt gaat worden.

Inderdaad ++ ... snap ook niet wat het nut is om met andermans antwoord aan de haal te gaan en dit tot 'winnaar' uit te roepen. De topic-starter is degene die dient aan te geven of een antwoord bruikbaar is.
Los daarvan, als je file_get_contents() loslaat op een lokaal PHP-bestand dan gaat dit niet door de scripting engine heen maar wordt gewoon alle rauwe PHP-code opgevraagd. Dat is waarschijnlijk niet wat je wilt.

Een aanpak met file_get_contents() gaat in dit geval om die reden sowieso niet werken.

Reageren