Ga naar inhoud

variabelen in PHP highlight


Aanbevolen berichten

Voor mijn site heb ik een script gemaakt dat o.a. PHP-code highlight. Het probleem is dat de variabelen wegvallen, omdat PHP ze als echte variabelen opvat die niet bestaan. Daarom wordt dit: [code:1:d9c191adad]<? $var = "mijn var"; echo "$var"; ?>[/code:1:d9c191adad] Na het parsen: [code:1:d9c191adad]<? = "mijn var"; echo ""; ?>[/code:1:d9c191adad] Het escapen van de variabele tekens helpt ook niet. Wie weet hoe ik dit op kan lossen?
Link naar reactie
[code:1:0ab575f699]function php_highlight($input) { ob_start(); $input = stripslashes($input); $input = str_replace("&lt;", "<", $input); $input = str_replace("&gt;", ">", $input); $input = str_replace("&quot;", "\"", $input); $input = str_replace("<br />", " ", $input); $input = str_replace("&copy;", "(c)", $input); $input = str_replace("&trade;", "(tm)", $input); $input = str_replace("&reg;", "(r)", $input); $input = str_replace("<img src=\"smiles/smile.gif\">", ":-)", $input); $input = str_replace("<img src=\"smiles/lach.gif\">", ":D", $input); $input = str_replace("<img src=\"smiles/boos.gif\">", ":|", $input); $input = str_replace("<img src=\"smiles/verbaasd.gif\">", ":O", $input); $input = str_replace("<img src=\"smiles/rolleyes.gif\">", "8|", $input); $input = str_replace("<img src=\"smiles/sad.gif\">", ":(", $input); $input = str_replace("<img src=\"smiles/slaap.gif\">", ":zzz", $input); $input = str_replace("<img src=\"smiles/tong.gif\">", ":lol", $input); $input = str_replace("<img src=\"smiles/wink.gif\">", ";)", $input); $input = str_replace("<img src=\"smiles/cool.gif\">", "8)", $input); $output = highlight_string($input, TRUE); return $output; } [/code:1:0ab575f699] En dit replaced alles: [code:1:0ab575f699]$bericht = preg_replace ("/(&lt;\?php|&lt;\?)((.|\n)*?)(\?&gt;)/ise", 'php_highlight("\\0")', $bericht);[/code:1:0ab575f699] Ik gebruik &lt; omdat ik daarvoor ergens htmlspecialchars(); gedraaid heb.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...