Parse PHP kode i streng
Hej, jeg har denne kode som ikke virker, hvilket ikke undrer mig så forfærdeligt meget.$html = preg_replace( "/\[php\](.*?)\[\/php\]/i", eval( "\\1" ), $html) ;
Jeg håber i kan se hvad det er jeg gerne vil opnå. $html kan indeholde en mængde PHP kode, omkranset af [php] og [/php], jeg vil gerne have at denne PHP kode parses og erstattes af resultatet. Hvis $html f.eks. indeholder denne kode
"Hello [php]echo "world" ;[/php]"
Skulle resultatet blive
"Hello world"
Da jeg ikke på forhånd ved hvor meget eller hvad PHP kode der måtte være gemt i $html, eller om der overhovedet er noget, er det jo lidt svært.
Og i behøver ikke nævne noget om sikkerhed her, det har jeg taget højde for, da det kun er mig der vil kunne ændre indholdet af $html
Følgende er de fejl jeg får med ovenstående kode, skulle det være til nogen hjælp
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/html/index.php(60) : eval()'d code on line 1
Parse error: parse error, unexpected $ in /var/www/html/index.php(60) : eval()'d code on line 1
