Avatar billede well_r Nybegynder
22. august 2006 - 10:20 Der er 5 kommentarer og
1 løsning

eval - men grib output

hej allesammen
Jeg vil lige høre.. Hvordan kan jeg gribe det output som eval giver mig, således at jeg indsætter det i en variabel?

dvs..
det jeg vil er noget ala:

function getFile($filename){
    $handle = fopen("./".$filename, "r");
    $contents = fread($handle, filesize($filename));
    fclose($handle);
    return ren_html_kode(eval($contents));
}
Avatar billede plazm Nybegynder
22. august 2006 - 10:32 #1
du skal bruge output buffering.
og så er include noget nemmere at bruge.

function getFile($filename){
    ob_start();
    include($filename);
    $html = ob_get_contents();
    ob_end_clean();
    return $html;
}
Avatar billede miqe Nybegynder
22. august 2006 - 10:36 #2
http://dk.php.net/manual/da/ref.outcontrol.php
Ovenstående link handler om hvordan du fanger/griber output.

De funktioner der hedder noget med ob_get... henter data ud fra output-bufferen.

ob_start();
eval($contents)
$out = ob_get_clean();
...Når du så er færdig kan du flushe bufferen:
ob_end_flush();
Avatar billede plazm Nybegynder
22. august 2006 - 10:39 #3
Han skal ikke flushe bufferen, da at flushe = at sende, og det er der jo ingen grund til når du har tømt den alligevel med ob_get_clean();
så mere korrekt er ob_end_clean();
Avatar billede well_r Nybegynder
22. august 2006 - 10:48 #4
er der ikke andre måder end lige netop OB?
Avatar billede plazm Nybegynder
22. august 2006 - 10:55 #5
ikke hvis du bruger echo eller print i din kode :)
Avatar billede well_r Nybegynder
22. august 2006 - 10:55 #6
tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB